股票市场。股票。交易订单的执行速度。 - 页 3

 

我在MT-5的股票部分检查了执行和填充订单,结果发现不可能使用

市场订单和填补IOC。

我应该选择哪种填充类型,以便将限价订单作为市场订单触发?

 
prostotrader #:

我在MT-5的股票部分检查了执行和填充订单,结果发现不可能使用

市场订单和填补IOC。

我应该选择哪种类型的补仓,以使限价订单作为市场订单触发?

RETURN应该是有效的。价格应接近杠杠,以确保它将被执行而不会挂起。这实际上将变成一个市场订单。

 
JRandomTrader #:

无论如何,RETURN应该是有效的。而为了确保它的表现,而不是挂羊头卖狗肉,价格应该是接近的吧。实际上,市场上的那一种会起作用。

我在我的Quick应用程序中这样做(trans2quik.dll不填充FOK),但有时会出现问题,当股票价格突然移动时。

它仍然保持在杯中。

我现在把我的应用移到MT-5,用一个命名的通道连接2个终端。

在MT-5中仍有一些复杂性,因为股票市场的专家顾问是一个管道服务器。

OnTrade和OnTradeTransaction是不可能的。

一方面,RETURN填充更有可能被执行,但是,订单仍然可能不会立即被执行。

另一方面,如果我们执行一个FOK。

另一方面,如果我们执行一个FOK,我们可能会得到一种情况,即我们总是没有量来执行。

我想知道什么才是最好的行动方案?

 
prostotrader #:

我在快速应用程序中这样做(在trans2quik.dll中没有填写FOK),但有时会出现一个问题,当股票价格急剧变化时。

它仍然保持在杯中。

我现在把我的应用移到MT-5,用一个命名的通道连接2个终端。

在MT-5中仍有一些复杂性,因为股票市场的专家顾问是一个管道服务器。

OnTrade和OnTradeTransaction是不可能的。

一方面,RETURN填充更有可能被执行,但订单仍然可能不会被立即执行。

另一方面,如果我们执行一个FOK。

另一方面,如果我们执行一个FOK,我们可能会得到一种情况,即我们总是没有量来执行。

我想知道什么才是最好的行动方案?

我们的意思是,当订单没有足够的流动资金到酒吧时的情况?

我们可以尝试用计时器来观察,如果是ORDER_STATE_PARTIAL,而且价格在柱子上,就把它删除。

或者是看SYMBOL_SESSION_*_ORDERS_VOLUME

 
prostotrader #:

目前将我的应用转移到MT-5,用一个命名的通道连接2个终端。

你好!

你能告诉我吗(如果不是秘密的话),你为什么不考虑在其他经纪商那里交易?如果有一个单一的经纪账户。

对于你在其他文章中写到的行动期货交易,结果是更方便了,对吗?+将解决很多连接两个终端的相关问题。

我唯一的选择是执行延迟和佣金...

 
Andrey Miguzov #:

你好!

你能不能告诉我(如果不是秘密的话),你为什么不考虑在其他经纪商那里交易?如果有一个单一的经纪账户。

对于你在其他文章中写到的股票期货交易,结果是更方便了,对吗?+将解决很多连接两个终端的相关问题。

我在选项中只有执行延迟时间和佣金...

我写道,Quick的工作速度非常慢,MT-5只在Otkritie和BCS中使用,我根本不考虑Finam。

在基金上不需要储备资金,而对于期货来说,在做黄牛的时候,不需要保留那么多多余的钱。

目标是以零风险的方式进行经典套利的剥头皮。

 
JRandomTrader #:

我们是否在谈论一种情况,即订单缺乏流动性,无法到达酒吧?

你可以尝试用计时器来观察,如果是ORDER_STATE_PARTIAL,而且价格在柱子上,那么就拍下来。

或者是看SYMBOL_SESSION_*_ORDERS_VOLUME。

你不能在Pipe服务器上使用其他函数,因为在Pipe服务器上唯一的实现是

MT-5(单线程)是将服务器EA挂在命令待机模式下,接收一个裂解器命令,执行它。

并发送结果。

//+------------------------------------------------------------------+
//| Expert Listen Pipe channel function                              |
//+------------------------------------------------------------------+
void ListenPipe()
{
  bool result; 
  bool can_close = false;
  while((IsStopped() == false) && (lsn_exit == false))
  {
    result = Pipe.ReadData();
    if(result == true)
    {
      switch(Pipe.in_data.pipe_com)
      {
        case P_LSNR_EXIT:
          Pipe.out_data.pipe_com = P_DONE;
          can_close = true;
          result = false;
        break;
        case P_SET_MAGIC:
          Pipe.out_data.pipe_com = P_DONE;
          result = false;
        break;
        case P_SELL_SPOT:
          spot_ticket = SpotSetOrder(Pipe.in_data.spot_trade_lot, Pipe.in_data.spot_trade_price, spot_magic, SELL);
          if(spot_ticket > 0)
          {
            Pipe.out_data.pipe_com = CheckDeal(spot_ticket);
          }  
          else Pipe.out_data.pipe_com = P_REJECT;
          result = false;
        break;
        case P_BUY_SPOT:
          spot_ticket = SpotSetOrder(Pipe.in_data.spot_trade_lot, Pipe.in_data.spot_trade_price, spot_magic, BUY);
          if(spot_ticket > 0)
          {
            Pipe.out_data.pipe_com = CheckDeal(spot_ticket);   
          }  
          else Pipe.out_data.pipe_com = P_REJECT;
          result = false;
        break;
        case P_CHECK_DEAL:
          if(spot_ticket > 0)
          {
            Pipe.out_data.pipe_com = CheckDeal(spot_ticket);
          }
          else Pipe.out_data.pipe_com = P_ORDER_N_FOUND; 
          result = false;
        break;
        case P_GET_DATA:
          GetData();
          Pipe.out_data.pipe_com = P_DONE;
          result = false;
        break;
        case P_ORDER_REMOVE:
          if(SpotRomoveOrder(spot_ticket) == true)
          {
            Pipe.out_data.pipe_com = P_ORDER_REMOVE_DONE;
          }
          result = false;
        break;
      }
      if(result == false)
      {
        result = Pipe.WriteData(Pipe.out_data);
        if(result == true)
        {
          if(can_close == true) lsn_exit = true;
        }
      }
    }
    else Print("Error resived data!"); 
  }
  Print("Listener exit.");
}

result = Pipe.ReadData(); hangs server-advisor, waits for command from client.

所有的服务器管理都来自于专家顾问-客户端

在这种模式下,终端之间的通信速度快得惊人,而且

结构,并有一组准备好的数据在两个方向。

 
prostotrader #:

在这种模式下,终端之间的通信速度快得惊人,而


带有一组准备好的数据的结构在两个方向上都是一次性传输。

管道是共享内存之上的上层建筑,所以(在同一台PC内)可以认为交换的滞后性为零。

 
Dmitriy Skub #:

管子是共享内存的附加物,因此(在同一台PC内)可以认为交换的滞后性为零。

我的意思是,没有必要通过你的应用程序进行沟通。

 
prostotrader #:

我写道,Quick非常慢,MT-5只在Otkritie和BCS,我根本不考虑Finam。

这就是我写的关于菲南的内容。我打算在那里开一个账户,就因为EBS。

很遗憾,经纪人不能在论坛上讨论。如 果你能在你的个人留言中写上为什么不去那里,我将非常感激。

无论如何,感谢你提供的信息!