我在 MetaTrader4 终端中编写了一个简单的警报 EA
我想在所有 FOREX Majors 和 FOREX Minors 上运行我的 EA,我已经完成了所有代码,但我希望它自动在我的 [Market Watch] 面板中的所有交易品种上运行。
这是我的代码,它非常简单,有人可以帮我演示一下如何使它在我的市场观察中的所有符号或符号上自动运行吗?
double RSI = iRSI( NULL,15, 7,PRICE_CLOSE,0 );
double Stoc = iStochastic( NULL,15, 5,3,3,MODE_SMA,STO_LOWHIGH,0,0);
double BoliUpper = iBands( NULL,15,20,2,0,PRICE_MEDIAN,1,1 );
double BoliLower = iBands( NULL,15,20,2,0,PRICE_MEDIAN,2,1 );
double CandlePrevHigh = iOpen( NULL,15, 1 );
double CandlePrevLow = iClose( NULL,15, 1 );
if ((RSI > 75) && (Stoc > 80)&& (BoliUpper < CandlePrevHigh) )
{
Alert(Symbol()+" is over bought");
}
else if ((RSI < 25) && (Stoc < 20)&&(BoliLower>CandlePrevLow))
{
Alert(Symbol()+" is over sold");
}
最佳答案
像这样遍历符号:
string syms[] = {"EURUSD","USDJPY"}; // Currency pair symbol array
for(int i=0; i < ArraySize(syms); i++) {
double RSI = iRSI( syms[i], 15, 7,PRICE_CLOSE,0 );
// ...
}
因此只需将所有“NULL”替换为 syms[i]
。
要获取 Market Watch 符号,您需要添加一些代码,但是 here和 here您可以找到一些免费的代码/库来帮助您做到这一点。
关于MQL4 通过仅添加到一个图表来在所有交易品种上运行 EA,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50297891/