Пример кода для рассмотрения:
start() {
//--------------------------------------------
// Get the MACD values for all time-frames
//--------------------------------------------
double vaiMACD[7];
vaiMACD[0] = iMACD(Symbol(), PERIOD_M1, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
vaiMACD[1] = iMACD(Symbol(), PERIOD_M5, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
vaiMACD[2] = iMACD(Symbol(), PERIOD_M15, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
vaiMACD[3] = iMACD(Symbol(), PERIOD_M30, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
vaiMACD[4] = iMACD(Symbol(), PERIOD_H1, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
vaiMACD[5] = iMACD(Symbol(), PERIOD_H4, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
vaiMACD[6] = iMACD(Symbol(), PERIOD_D1, 12, 26, 9, PRICE_CLOSE, MODE_SIGNAL, 0);
//--------------------------------------------
//--------------------------------------------
// CALC: Total Buys/Sells
//--------------------------------------------
int viMACDSignalBuyCount = 0;
int viMACDSignalSellCount = 0;
for(int viElement=0; viElement<ArrayRange(vaiMACD, 0); viElement++) {
//-----------------------------------------------------------
// Here, you need to define your own rules on what is considered as Buy/Sell signal.
// My example here is a simple: >0 is Buy. <0 is Sell.
//-----------------------------------------------------------
if(vaiMACD[viElement]>0) viMACDSignalBuyCount += 1;
if(vaiMACD[viElement]<0) viMACDSignalSellCount += 1;
}
//--------------------------------------------
//--------------------------------------------
// Display Outcome
//--------------------------------------------
Comment("Total MACD Signals:"
+ " " + viMACDSignalBuyCount + " (Buy)"
+ ", " + viMACDSignalSellCount + " (Sell)"
);
}
Есть некоторые части отсутствуют. Определите количественно точный метод, с помощью которого индикатор Multi-TimeFrame вашего желания решает, при каких обстоятельствах он сообщает (на одном таймфрейме), это '{Buy | NOP | Sell} ', и из этого может начаться реализация MQL4. – user3666197
Вы также можете отметить, что индикаторы многократного таймфрейма и стратегии EA вызывают проблемы при запуске в ** MT4.StrategyTester **, будь то с/без механизма оптимизации. Если вас интересует профессиональное решение, любезно ответьте на вопрос, чтобы получить работу для вас. – user3666197