晚上好!
我正在考虑将两对组合成一个EA。我已经做到了。
但我突然有了疑虑。我是这样做的。
extern bool GBP=true; extern bool EUR=true; - - - - - - - - - - - - - - - - - - - - int start() { double A = iRSI("GBPUSD", 0, .....); double B = iRSI("GBPUSD", 0, .....); double C = iRSI("EURUSD", 0, .....); double D = iRSI("EURUSD", 0, .....); //------------------------------------------------------ if (GBP) {//если есть разрешение true if (A<B) { double BID = MarketInfo("GBPUSD", MODE_BID); double ASK = MarketInfo("GBPUSD", MODE_ASK); double POINT =MarketInfo("GBPUSD",MODE_POINT); (ticket=OrderSend .... //ПОКУПАЕМ/ПРОДАЕМ...) }}} //---------------------------------------------------------- if (EUR) { //если есть разрешение true if (C>D) { double BID = MarketInfo("EURUSD", MODE____BID); double ASK = MarketInfo("EURUSD", MODE____ASK); double POINT =MarketInfo("EURUSD",MODE____POINT); (ticket=OrderSend .... //ПОКУПАЕМ/ПРОДАЕМ...) }}} //------------------------------------------------------------ return(0); }
在网上和策略测试器中,一切都在运作!这就是为什么我们要把它作为一种 "工具"。也许这不是很正确的做法。
extern bool GBP=true; extern bool EUR=true; - - - - - - - - - - - - - - - - - - - - int start() { //------------------------------------------------------ if (GBP) //если есть разрешение true{ double C = iRSI("GBPUSD", 0, .....); double D = iRSI("GBPUSD", 0, .....); if (A<B) { double BID = MarketInfo("GBPUSD", MODE_BID); double ASK = MarketInfo("GBPUSD", MODE_ASK); double POINT =MarketInfo("GBPUSD",MODE_POINT); (ticket=OrderSend .... //ПОКУПАЕМ/ПРОДАЕМ...) }}} //---------------------------------------------------------- if (EUR) { //если есть разрешение true double C = iRSI("EURUSD", 0, .....); double D = iRSI("EURUSD", 0, .....); if (C>D) { double BID = MarketInfo("EURUSD", MODE____BID); double ASK = MarketInfo("EURUSD", MODE____ASK); double POINT =MarketInfo("EURUSD",MODE____POINT); (ticket=OrderSend .... //ПОКУПАЕМ/ПРОДАЕМ...) }}} //------------------------------------------------------------ return(0); }第二个选项在测试器中似乎也能工作。
但什么是最好的方法呢?
我通常在开始时计算所有的指标值,即变体1,这更容易,你不会感到困惑,代码也更有条理。
谢谢你!对于答案。还有一个问题。拖曳式止损不愿意工作。它们在测试器中单独工作!
但在网上,它对一双人来说是有效的。但对于另一个人来说,它产生了错误--就在连接专家顾问之后。
但成交了--只是在第二对上没有拖网。
错误130 修改SL
int start() { РАСЧЁТ ИНДИКАТОРОВ { ПОКУПКА/ПРОДАЖА } for (int j=0; j<OrdersTotal(); j++) { if (OrderSelect(j, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol()=="GBPUSD" && OrderMagicNumber()==Magic1) { ИДЕТ КОД 1 ТРЕЙЛИНГА. } for (int r=0; r<OrdersTotal(); r++) { if (OrderSelect(r, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol()=="EURUSD" && OrderMagicNumber()==Magic2) { ИДЕТ КОД 2 ТРЕЙЛИНГА } return(0); }后面的代码是相同的,但外部和内部变量的字符不同。
我无法理解什么是错的。也许有人会告诉我?
int start() { //РАСЧЁТ ИНДИКАТОРОВ //ПОКУПКА/ПРОДАЖА for (int j=0; j<OrdersTotal(); j++) { if (OrderSelect(j, SELECT_BY_POS, MODE_TRADES)) { if (OrderSymbol()=="GBPUSD" && OrderMagicNumber()==Magic1) { ИДЕТ КОД 1 ТРЕЙЛИНГА. } if (OrderSymbol()=="EURUSD" && OrderMagicNumber()==Magic2) { ИДЕТ КОД 2 ТРЕЙЛИНГА } } } return(0); }
我会试试的,谢谢你。
它似乎在起作用!
暂时没有错误。等待利润来检查拖网的情况。
更多问题。如果你不介意的话。
现在还没有最简单的多货币实验的例子。 而在有这些例子的地方,它们也不是为软弱的人准备的。要了解所有的事情太复杂了。
我的代码里有一个。
double BID = MarketInfo("GBPUSD", MODE_BID); double ASK = MarketInfo("GBPUSD", MODE_ASK); double POINT =MarketInfo("GBPUSD",MODE_POINT); //-------Проверяем условие на покупку------------- if (
然而,在本网站的罕见例子中,当类似的块状物出现时,有一条线。
RefreshRates(); double BID = MarketInfo("GBPUSD", MODE_BID); double ASK = MarketInfo("GBPUSD", MODE_ASK); double POINT =MarketInfo("GBPUSD",MODE_POINT);
我还插入了这一行。它编制了。但我没有注意到性能上的任何变化。
这里需要多少呢?也许应该把它留在我的EA中。它对所有蜱虫都有效。而且它使用了一个数组的值--
//------заполняем массив значениями RSI GBPUSD ----------- double RSI_array[30]; int i=0; while (i<31) { RSI_array[i]=iRSI("GBPUSD",0,GBPUSD_period,3,3,MODE_SMA,0,MODE_MAIN,i); i++;
发现错误!而不是 "0" - 我把货币的指标变量 - 专家顾问工作的时间框架。
我的专家顾问似乎工作得很顺利。而且拖网也很有效。
还有最后一个问题,我希望。我又插入了一个。但它不是内置的指标,而是一个自定义的指标。在测试器中,这对组合是有效的。但在网上,它不会!它显示的东西很奇怪:几乎每秒钟都有这个指标被放置和删除。.....。- 有什么建议吗?
//***************************************************************
kLerk !在本周所有的专家中,你是唯一一个对我的问题作出回应的人。而我得到的答案是我基本满意的。( 关于RefreshRates()的问题除外 )
请把你的电子邮件地址放在这里。
为了表示感谢,我将送你一个简单的交易 "圣杯"--EA!这是我的好朋友发明的。(同意)我用它进行手动确认。我把它作为手动确认来使用。 我只使用两个内置的诱导指标。
毫无讽刺意味的是,--它真的几乎是一个 "圣杯"(在某些工作技巧上),--你在收到它之后几分钟就会发现然而--让大家看一看。
符号---------
期间30分钟(M30) 2007.01.02 11:00 - 2007.08.15 00:00
所有刻度线模型(基于所有最小的可用周期,对每个刻度线进行分形插值)。
建模质量 67.35
初始存款10000.00
净利润 4009.24
总利润 6335.06 总损失 -2325.82
利润率 2.72 预期回报率 21.44
最大缩水 245.63 (2.18%) 相对缩水 2.18% (245. 63)
交易总额 187
空头头寸(胜率) 71 (80.28%)
多头头寸(胜率) 116 (68.10%)
盈利的交易(占所有交易的百分比) 136 (72.73%)
亏损交易(占全部的百分比) 51 (27.27%)
最大的盈利交易145.02,亏损交易-47。77
平均获利交易46.58,亏损交易-45.60
最大的连续胜场数(利润) 9 (586. 96)
连续损失(亏损) 4 (-189.99)
而这里是上一年2006年11/12月的样本外测试图。
晚上好!
我正在考虑将两对组合成一个EA。我已经做到了。
但我突然有了疑虑。我是这样做的。
在网上和策略测试器中,一切都在运作!这就是为什么我们要把它作为一种 "工具"。也许这不是很正确的做法。
第二个选项在测试器中似乎也能工作。但什么是最好的方法呢?