关于OnTradeTransaction函数的问题 - 页 3

 
Mikalas:

:)

1.森林的例子

2.不能放支架点吗?

3.我的印象是你在通过一条线阅读信息 :)

不,我的印象是, 在越界写作。

void OnTick()
{
  MqlTick a_tick; //Зачем этот зазор ниже?
                                           
  if ( SymbolInfoTick( _Symbol, a_tick ) )
  {
    PlaceOrder( _Symbol, a_tick.ask, 1, false );   //Устанавливаем ордер
  }     
}

:))我设置了断点,但我还是不明白。对不起,但你的代码太丑了。订单首先被发送,然后在OnTradeTransaction 和CheckOrder()中进行一些无意义的检查。体积也在检查器中计算。

让我们不要互相折磨。你至少给你的代码做一个简单的注释(可以说作者想说什么,他追求什么目标:),我将尝试对它做一个不浅的分析。我不想按现在的样子重新调用它,即使在断点下也是如此。

 
Mikalas:

:)

让我们这样做吧。

我问你问题,你回答他们,好吗?

...

来吧!
Mikalas:

问题1:如果TradeTransaction事件没有发生(或没有使用),你如何知道订单票(通过发送OrderSendAsync命令)?

我将通过TrackingHistoryOrders函数识别订单票,因为订单迟早会被执行,它将进入这个函数分析的订单历史

 
C-4:

我的印象是,你在通过一条线来写作。

我设置了断点,但还是不明白。对不起,但你的代码太丑了。订单首先被发送,然后在OnTradeTransaction和CheckOrder()中进行一些无意义的检查。体积也在检查器中计算。

让我们不要互相折磨。你至少给你的代码做一个简单的注释(可以说作者想说什么,他追求什么目标:),我将尝试对它做一个不浅的分析。我不想以现在的形式重新调用它,即使在断点下也是如此。

:):):)

我不再是个年轻人了(照片是9年前的),我更愿意在代码中制造 "空隙",以便更好地感知。

而且很多人还发现,当100个字符的行和列不写在一起时,阅读代码 会更方便。

你认为它是 "丑陋的",因为你花时间发明了你自己的方法。

OrderSendAsync命令,所以你认为不同的代码=丑陋的!"。:)

这个原则非常简单,你也知道,因为你参与了这个问题的讨论。

这个问题的解决方案是由Yurich 提出的,即对于OrderSendAsync命令的每个订单

命令有自己的魔力,那么这个订单,如果TradeTransaction事件没有到达,是非常容易找到的(通过魔力)。

每个符号都有一个魔数范围,例如,澳元兑美元从1010000到1019999。

欧元兑美元从1020000到1029999

这些独特的数字可以在一段时间内重复出现

if ( mem_magic >= ( magic_number + 9999 ) ) mem_magic = magic_number;  //Переполнение, начинаем сначала

为了避免 "进入 "另一个订单,有一个变量(datetime mem_time;)。

其中存储了下订单的日期和时间。

我们可以继续进行吗?

 
C-4:
来吧!

我通过函数TrackingHistoryOrders获得订单票据,因为订单迟早会被执行,会进入订单历史,这个函数会对其进行分析。

这很好,但我需要更早而不是更晚(订单可以 "挂 "一天,它不会出现在历史上)。

我想修改它!

我想删除!

 

所有的大惊小怪和大量的辅助代码都来自这句话:此外,交易在从服务器到终端的传递过程中可能会丢失

谁能澄清一下情况?谁能亲自失去交易(交易所故障、经纪人关闭、MQ MT5服务器停止)?

为什么MQ不愿意保证交易的交付,谁受益?

 
Serj_Che:

所有的大惊小怪和大量的辅助代码都来自这句话:此外,交易在从服务器到终端的传递过程中可能会丢失

谁能澄清一下情况?具体到人,谁会在交易中失利(交易所故障、经纪人倒闭)?

为什么MQ不愿意保证交易的交付,谁受益?

没有人这样做,但MQ "负担不起 "同时做所有事情,而且有许多项目,而且

有才华的程序员很少,所以花的时间太长了......

当然,他们会的。(除了追踪机制本身之外,他们已经拥有了这方面的一切)。

 
Basil,那么如果你没有票据,你如何修改(删除)发出的OrderSendAsync
 
Mikalas:

没有人受益,MQ只是不能一下子拿到手,而且有很多项目,但

有才华的程序员很少,所以花的时间太长了......

当然,他们会的。(他们已经有了这方面的一切,除了追踪机制本身)。

据我所知,交易所把一切都给了。对于一个正常的经纪人来说,失去任何东西也是没有意义的。

在MQ上,它看起来是这样的。MQ有MetaTrader5,与交易所的整合不是一个优先事项。

 
Serj_Che:

就我而言,交流会把一切都说出来了。对于一个正常的经纪人来说,失去什么也是没有意义的。

这与MQ类似。MQ有MetaTrader5,与交易所的整合不是一个优先事项。

是的,这是因为交易所没有厨房(只有佣金),而外汇市场上有数百万的MMM追随者。

他们可能有100美元,但每个人都有!巨大的金钱,有什么好计较的!:)

 

瓦西里,会有答案吗?

我不这么认为。

我赢了吗?