"Floating PositionSelect()错误 - 页 5

 

prostotrader:

这样说更有意义吗?"教授"?

嘿嘿嘿。你是成年人还是什么?

你想在截图中显示什么?

让我们来看看你日志中的要点。

第一个是。

2016.08.15 15:37:17.720    Test_deff_order (GAZR-9.16,M1)    History done. Ticket: 50942179

在第二段中,你看到了什么?

我会不厌其烦地把它写下来。

2016.08.15 15:37:17.720    Test_deff_order (GAZR-9.16,M1)    Volume initial: 1.0. Volume current: 0.0 Deals done: 0.0 

 

但你又一次试图分析一些东西(订单),而没有考虑到让你分析头寸量 的触发器是TRADE_TRANSACTION_DEAL_ADD类型的交易--在历史上增加一笔交易。

然而,你坚持不懈地,无数次地,用TRADE_TRANSACTION_DEAL_ADD你不检查仓位量。

这是你在上面信息中的代码。

      case TRADE_TRANSACTION_DEAL_ADD:
        if((order_ticket!=0) && (trans.order==order_ticket))
        {
         Print("Deal done. Ticket: ",trans.order);
        }
      break; 
 
Изменение позиции в терминале происходит строго в результате получения сделочной транзакции, ....

难道你看不出来,(在第二种情况下)在交易到达 之前,头寸已经发生了变化?

这不应该是,因为Alexndr写道。

Изменение позиции в терминале происходит СТРОГО в результате получения сделочной транзакции, ....
 

STRICTLY!

STRICTLY!

STRICTLY!

STRICTLY!

 
prostotrader:

难道你看不出来,(在第二种情况下)头寸在交易进来之前 就已经改变了吗?

不应该有,因为Alexndr写道。

哦,就是这样...只有作者会说得更准确 :-))

但是,我认为,不值得在这些词上挑毛病。交易已经到达,只是在OnTradeTransaction() 中没有立即处理。

有趣的是,你指的是贸易交易,而在你的代码中 却有TRADE_TRANSACTION_HISTORY_ADD 的情况。

我认为,在这里,重要的是通过检查交易来处理它 - 案例TRADE_TRANSACTION_DEAL_AD。

 
Dennis Kirichenko:

啊,这就是了...只有作者才能更精确地描述 :-))

但是,我认为,我们不应该挑剔这些词。交易已经到达,只是没有在OnTradeTransaction()中立即处理。

我认为,重要的是通过检查交易来处理它...

谢谢Denis!

我是个傻瓜,甚至不知道OnTradeTransaction 是什么。

 
prostotrader:

谢谢Deniska!

我是个傻瓜,甚至不知道OnTradeTransaction是什么。

我的荣幸!但你的讽刺是毫无根据的。你已经被连续擦了好几次,代码中的问题是什么

至少你应该感谢弗拉基米尔,他是第一个指出正确方向的人;-)

 
Dennis Kirichenko:

我的荣幸!但你的讽刺并不是有意为之。你已经连续几次被告知代码中存在 问题。

至少你应该感谢弗拉基米尔,他是第一个指出正确方向的人;-)

阅读 "在你闲暇时"。

https://www.mql5.com/ru/forum/93357#comment_2707875

 

卡尔普托夫-弗拉基米尔

我的头像下面的数字不能乘以1000吗?

还有一件事...

如果你没有注意到,我应该说,在所有的例子中,订单都是放出来的

异步的,所以控制它们很重要!

 
prostotrader:

卡尔普托夫-弗拉基米尔

我的头像下面的数字不能以1000为单位死亡吗?

你头像下的数字不属于你,所以你对它们没有权力(你不能随意改变它们)。

已添加。

忘记订单,直到类型为TRADE_TRANSACTION_DEAL_ADD的交易。为什么 "忘记它"?因为这是不对的。