private void monitorPriceTrend(int index) { currentPrice = (double)SimulationHouse.shareTable.Rows[index]["BidClose"]; lastMA = currentMA; currentMA.M5 = Cal_MA(index, 5); currentMA.M10 = Cal_MA(index, 10); currentMA.M20 = Cal_MA(index, 20); currentMA.M30 = Cal_MA(index, 30); currentMA.M60 = Cal_MA(index, 60); currentMA.M120 = Cal_MA(index, 120); currentMA.M240 = Cal_MA(index, 240); lastMATrend = currentMATrend; currentMATrend.M5_SlopeRatio = currentMA.M5 - lastMA.M5; currentMATrend.M10_SlopeRatio = currentMA.M10 - lastMA.M10; currentMATrend.M20_SlopeRatio = currentMA.M20 - lastMA.M20; currentMATrend.M30_SlopeRatio = currentMA.M30 - lastMA.M30; currentMATrend.M60_SlopeRatio = currentMA.M60 - lastMA.M60; currentMATrend.M120_SlopeRatio = currentMA.M120 - lastMA.M120; currentMATrend.M240_SlopeRatio = currentMA.M240 - lastMA.M240; lastPriceTrend = currentPriceTrend; if (currentMA.M5 > currentMA.M10) { this.currentPriceTrend = Trend.Ascend; } else if (currentMA.M5 < currentMA.M10) { this.currentPriceTrend = Trend.Descend; } }
private void monitorPriceTrend(int index) { currentPrice = (double)simulateDt.Rows[index]["BidClose"]; lastMA = currentMA; currentMA.M5 = MA(index, 5); currentMA.M10 = MA(index, 10); currentMA.M20 = MA(index, 20); currentMA.M60 = MA(index, 60); currentMA.M120 = MA(index, 120); lastMATrend = currentMATrend; currentMATrend.M5_SlopeRatio = currentMA.M5 - lastMA.M5; currentMATrend.M10_SlopeRatio = currentMA.M10 - lastMA.M10; currentMATrend.M20_SlopeRatio = currentMA.M20 - lastMA.M20; currentMATrend.M60_SlopeRatio = currentMA.M60 - lastMA.M60; currentMATrend.M120_SlopeRatio = currentMA.M120 - lastMA.M120; lastPriceTrend = currentPriceTrend; if (currentMA.M5 > currentMA.M10) { this.currentPriceTrend = Trend.Ascend; } else if (currentMA.M5 < currentMA.M10) { this.currentPriceTrend = Trend.Descend; } }