bool OpenSell()
{
int ticket = -1;
double OOP = fastMa - SellHear * pt; // Получаем значение цны открытияif ((Bid - ND(OOP)) >= g_stopLevel) // Проверка цену открытия на стоплевел
{
if (ND(OOP) < Bid) // Проверка что цена открытия ниже Bid, т.к. у нас вход отложенником
{
Print("Bid = ", Bid);
Print("Ask = ", Ask);
Print("fastMa = ", fastMa);
Print("Цена покупки = ", fastMa + buyHear * pt);
Print("i_thresholdFromMa * pt = ", i_thresholdFromMa * pt);
ticket = OrderSend(Symbol(), OP_SELLSTOP, 0.1, ND(OOP), 3, 0, 0, NULL, i_magic, 0);
}
}
if (ticket < 0) <------ это как понимать? если ордер не установлен, то вернуть true, в функцииboolOpenBuy() почему-то наиборот, где правильно???? {
return (true);
}
elseAlert (GetLastError());
}
int GetStateMa(double fastMa, double slowMa)
{
if (fastMa > slowMa) // Если условия выполнены, то..
return (MA_DIRECT_TO_UP); <--здесь вверх // ..машки направлены вниз <-- а здесь
if (fastMa < slowMa) // Если условия выполнены, то..
return (MA_DIRECT_TO_DOWN); <--- // машки направлены вверх <---
if (fastMa = slowMa)
return (MA_DIRECT_TO_NONE); // Машки не имеют выраженного направления
}
从日志上看是对的。但如果你在测试器中以同样的设置运行,那么暂停的时间就不能正确地定期设置,这一点我已经说过了...这就是我所写的。我看了日志,一切都很清楚......。看了一下截图...(当我看图表时,我注意到 买入点比买入点要低一些......这与条件相反。
但同样奇怪的是,我在M5上没有注意到这一点,但已经注意到有些条目被漏掉了。
维克多,你需要研究指标和在你的EA中使用它们的方法。因为在我看来,你想要的东西,你不知道如何执行。
我一直在研究他们,不是吗?我只是想让价格设置得比开盘价 或收盘价 绘制的图表更低(更高),否则就无所谓了。没有任何区别,因为如果你拿一个指数为1的柱子,它已经形成,它的价值不会再有任何变化......如 果指标不重绘,那么它是如何绘制的就不重要了(虽然我明白它是如何计算的,因为我在注意它,它很简单)。毕竟,它在以前的酒吧里的价值已经存在,你可以得到它,我就是这么做的。
还有一点,你不应该对非常严格的条件如此 "纠结",因为在一半的情况下,价格肯定不会按照你想要的方式表现。因此,你必须捋清在最坏情况下你会做什么的选项。
鲍里斯,在一个真正的市场中,可能有不同的选择,而且条件不会总是得到满足......是的!我明白这一点。但如果在测试器中没有满足条件,那就很奇怪了。在测试器中,没有重新报价,也没有与贸易流繁忙程度有关的错误,等等。从 逻辑上讲,所有的订单都应该得到完美的执行。
在测试器中,如果所有的订单都能完美完成,那么我已经可以想到策略的理想表现。然后根据统计数据做出适当的决定。
但是,如果即使在策略测试器中,我们也无法运行该策略,而且它在每一步都公然撒谎,那么又该怎么办呢?从这个平台上逃跑,不要回头?寻找其他方法?
我真的想写一个合理的机器人,我有自己的策略,其中充满了我的方法和观察。有些东西已经写好了,有些东西正在现实生活中测试,有些东西已经在测试器中运行,而且一切正常。大多数情况下,我是根据魔杖写的EA,但条目不是根据魔杖写的。
我已经决定用我的魔杖的读数作为输入,我就重生了。我不能得到任何稳定的条目,它们被跳过,在某处输入错误的价格。我认为说我不应该相信指数是不合适的,因为计算机有一定的数值系列,而且它们必须正常工作。
我已经证明了一切,顺便把问题发给了系统管理员。到目前为止,我还没有听到一个明白的答案......
。
坦率地说,我仍然不明白为什么进入这个酒吧而不是另一个酒吧对你如此重要。在我看来,最主要的是要及时识别和利用已经开始的趋势,而不是某一个进入点。试着比较不同的Mashkas,然后学会把它们作为不需要的入市的过滤器,而不是作为入市的信号,这往往是失败的,其他的指标也没有更好的效果
鲍里斯,如果你这样看的话,你在哪里进入其实并不重要 :)你可以在某个地方进入,并拖住条目,甚至不是自发的。我的答案很简单!有一定的条件。如果目前的蜡烛还没有成真,那么就让其他人去交易吧......我将等待......。我不是在追赶潮流,我是在追随潮流。我甚至不打算为某段历史再写一个圣杯。
如果我们认为即使在H1 TF 上也不一定能观察到符合策略的进项,那么对于更低的TF 又该怎么说呢?毕竟H1不是一分钟,也不是5分钟。在TF H1 中,专家顾问有足够的时间来 "思考",特别是在测试器中...所以这不是问题的关键。
请记住,只有在平坦的地方,马什卡才会粘在栏杆上,而你无法在平展的地方抓到它!
无所谓了 :)我的参赛作品将是不同的。这只是一个小技巧,我需要掌握。再往后,情况会变得更加复杂。
没关系的 :)我的入口将是不同的。这只是一个需要掌握的小技巧。从现在开始,情况会变得更加复杂。
也许可以在开盘价上进行测试,特别是在刻度线上...
而最重要的是,你有毅力,事实是,也许,没有足够的耐心和灵活性,但随着时间的推移,你会实现你所设定的目标!好运!
谢谢你!顺便说一句,我最近从一个熟人那里听到了这句话...一个经纪人 :)他说我非常固执,过于自信。我没有其他选择,我只是必须完成我开始的工作,否则什么都不会发生。
,你能不能测试一下开盘价,特别是在小时线上...
看起来一些额外的点被 "吃掉 "了,在某处或其他地方。把缩进量增加到15,一切都开始在没有设置的地方设置了。缩进较少,不是到处都是...
我的想法是这样的。我必须想出一个办法,使断点在测试专家顾问 时出现,如果满足某些条件。.当订单被发送或发生错误时,我已经做到了,也就是说,它没有被发送到某个地方,但为了 "抓住 "订单没有被打开的那一刻,应该设置什么条件,我以为它在哪里,......这已经很有趣了。当然,我们可以通过时间来做,但这不是最好的选择。
static datetime lastBarTime = 0; // 最后的计算时间
将这一行从开始删除,并在全局部分添加相应的声明。
之后,你可以重复一系列的TF开关,最好是按照之前的顺序。
是的,也在init中加入:lastBarTime = 0。
if (fastMa = slowMa)