OrderSend()函数中的一个错误? - 页 2

 
hoz:


从日志上看是对的。但如果你在测试器中以同样的设置运行,那么暂停的时间就不能正确地定期设置,这一点我已经说过了...这就是我所写的。我看了日志,一切都很清楚......。看了一下截图...(当我看图表时,我注意到 买入点比买入点要低一些......这与条件相反。

但同样奇怪的是,我在M5上没有注意到这一点,但已经注意到有些条目被漏掉了。

如果我们看一下图纸,就会发现,拉杆在平地,而在反转时,我们却抓不到它!这就是为什么我们要把拉杆放在平地。
 
borilunad:

维克多,你需要研究指标和在你的EA中使用它们的方法。因为在我看来,你想要的东西,你不知道如何执行。

我一直在研究他们,不是?我只是想让价格设置得比开盘价收盘价 绘制的图表更低(更高),否则就无所谓了。没有任何区别,因为如果你拿一个指数为1的柱子,它已经形成,它的价值不会再有任何变化......如 果指标不重绘,那么它是如何绘制的就不重要了(虽然我明白它是如何计算的,因为我在注意它,它很简单)。毕竟,它在以前的酒吧里的价值已经存在,你可以得到它,我就是这么做的。

borilunad:

还有一点,你不应该对非常严格的条件如此 "纠结",因为在一半的情况下,价格肯定不会按照你想要的方式表现。因此,你必须捋清在最坏情况下你会做什么的选项。

鲍里斯,在一个真正的市场中,可能有不同的选择,而且条件不会总是得到满足......是的!我明白这一点。但如果在测试器中没有满足条件,那就很奇怪了。在测试器中,没有重新报价,也没有与贸易流繁忙程度有关的错误,等等。从 逻辑上讲,所有的订单都应该得到完美的执行。

在测试器中,如果所有的订单都能完美完成,那么我已经可以想到策略的理想表现。然后根据统计数据做出适当的决定。

但是,如果即使在策略测试器中,我们也无法运行该策略,而且它在每一步都公然撒谎,那么又该怎么办呢?从这个平台上逃跑,不要回头?寻找其他方法?

我真的想写一个合理的机器人,我有自己的策略,其中充满了我的方法和观察。有些东西已经写好了,有些东西正在现实生活中测试,有些东西已经在测试器中运行,而且一切正常。大多数情况下,我是根据魔杖写的EA,但条目不是根据魔杖写的。

我已经决定用我的魔杖的读数作为输入,我就重生了。我不能得到任何稳定的条目,它们被跳过,在某处输入错误的价格。我认为说我不应该相信指数是不合适的,因为计算机有一定的数值系列,而且它们必须正常工作。

我已经证明了一切,顺便把问题发给了系统管理员。到目前为止,我还没有听到一个明白的答案......

borilunad:

坦率地说,我仍然不明白为什么进入这个酒吧而不是另一个酒吧对你如此重要。在我看来,最主要的是要及时识别和利用已经开始的趋势,而不是某一个进入点。试着比较不同的Mashkas,然后学会把它们作为不需要的入市的过滤器,而不是作为入市的信号,这往往是失败的,其他的指标也没有更好的效果

鲍里斯,如果你这样看的话,你在哪里进入其实并不重要 :)你可以在某个地方进入,并拖住条目,甚至不是自发的。我的答案很简单!有一定的条件。如果目前的蜡烛还没有成真,那么就让其他人去交易吧......我将等待......。我不是在追赶潮流,我是在追随潮流。我甚至不打算为某段历史再写一个圣杯。

如果我们认为即使在H1 TF 上也不一定能观察到符合策略的进项,那么对于更低的TF 又该怎么说呢?毕竟H1不是一分钟,也不是5分钟。在TF H1 中,专家顾问有足够的时间来 "思考",特别是在测试器中...所以这不是问题的关键。

 
borilunad:
请记住,只有在平坦的地方,马什卡才会粘在栏杆上,而你无法在平展的地方抓到它!

无所谓了 :)我的参赛作品将是不同的。这只是一个小技巧,我需要掌握。再往后,情况会变得更加复杂。
 
hoz:

没关系的 :)我的入口将是不同的。这只是一个需要掌握的小技巧。从现在开始,情况会变得更加复杂。
而最重要的是,你要有毅力,事实上,你可能缺乏耐心和灵活性,但假以时日,你会得到你想要的东西!好运!
 
也许可以测试一下开盘价,特别是在时价上......
 
YOUNGA:
也许可以在开盘价上进行测试,特别是在刻度线上...
当然,对蜱虫更好!画面会更有说服力。
 
borilunad:
而最重要的是,你有毅力,事实是,也许,没有足够的耐心和灵活性,但随着时间的推移,你会实现你所设定的目标!好运!


谢谢你!顺便说一句,我最近从一个熟人那里听到了这句话...一个经纪人 :)他说我非常固执,过于自信。我没有其他选择,我只是必须完成我开始的工作,否则什么都不会发生。

杨娅
,你能不能测试一下开盘价,特别是在小时线上...


看起来一些额外的点被 "吃掉 "了,在某处或其他地方。把缩进量增加到15,一切都开始在没有设置的地方设置了。缩进较少,不是到处都是...

我的想法是这样的。我必须想出一个办法,使断点在测试专家顾问 时出现,如果满足某些条件。.当订单被发送或发生错误时,我已经做到了,也就是说,它没有被发送到某个地方,但为了 "抓住 "订单没有被打开的那一刻,应该设置什么条件,我以为它在哪里,......这已经很有趣了。当然,我们可以通过时间来做,但这不是最好的选择。

 

static datetime lastBarTime = 0; // 最后的计算时间

将这一行从开始删除,并在全局部分添加相应的声明。

之后,你可以重复一系列的TF开关,最好是按照之前的顺序。

是的,也在init中加入:lastBarTime = 0。

 
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, в функции bool OpenBuy() почему-то наиборот, где правильно????
   {
       return (true);
   }
   else
    
   Alert (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);              // Машки не имеют выраженного направления
}
и вообще весь код какой-то "Олбанский"
 
pako:
阿尔巴尼亚语是不被禁止的:)