如何让专家顾问以准确的价格进入交易?

How to make an Expert advisor to enter a trade at an exact price?

我做了一个EA,就是在特定的价格进场交易。但我注意到它并没有以准确的价格进入交易,而是以比指定价格高出 3-5 个小数点的价格进入交易。我想要的是 EA 以准确的价格进入交易。有人可以帮忙吗?

How to make an Expert advisor to enter a trade at an exact price?

进行交易是一种双边合同 - 它有一方为您提供价格(由您的经纪人调解)并且它有一方(您亲自或由自动 code-driven trading-agent ), 谁接受价格。所有这些都受为开展这项业务而签署/接受的条款和条件的约束。

// ----------------------------------------------------------------------------
// Rule#0: Prices move faster, than the QUOTE-message ever makes it to your CPU
// --------------------------
   RefreshRates(); // A MUST DO AS-LATE-AS-POSSIBLE, before placing a tight slippage XTO
// --------------- // A RE-TEST AS-FAST-AS-POSSIBLE if XTO conditions hold
   ...
// --------------- // GO / NO-GO XTO, always using Normalized values
   ticket = OrderSend( Symbol(),
                       XTO_OrderTYPE,
                       NormalizeDouble( XTO_volume, LotDigits ),
                       NormalizeDouble( XTO_price,  Digits() ),
                       MaxSlippage, //---------------------------- BE CAREFULL ON THIS
                       0,           // [XTO_price_SL]
                       0,           // [XTO_price_TP]
                       ordername,
                       MagNumber,
                       0,
                       clr
                       );

时间很重要,价格变化确实很快。 VPS可以避免,但还是有一部分

在我们到达 type-of-Contract 之前,它决定了交易是如何在经纪人端执行的(spot-Buy-Long 使用其他 price-handling 而不是 pending-BuyStop ),首先,让我们看看网络延迟(Top-of-the-Book [ToB] 价格在从市场更改和广告到经纪商以及从经纪商到您的计算机或 VPS 计算机之前保持多长时间(即使是最好的 co-located VPS 机器在电缆上也有几百米 "farther",而 "behind" Broker 的机器,因此接收速度慢几个数量级 ToB-QUOTE-updates, 比你的 Broker Server 是 ).

ToB-prices 在 FX-Majors 的稳定市场中,ToB-prices 的持有时间少于 100 ms,但在此期间经常有成千上万的疯狂波动基本事件,其中每个 [ms] 可能包含数十个,如果不是数百个,有时甚至数千个 ToB-price 每个 [ms].

的变化

如果您坚持交易的确切价格,您可以使用 pending-contracts,而不是 immediate-price 执行的订单(通常称为 at-Market ).

您的经纪人条款和条件定义了执行此操作的规则。

请注意,即使 pending-orders 也可能 "acquire" 一个 price-slippage,"ordered" 价格和实际 "executed" 价格之间的差异,所以再次,条款和条件将规定( SNB flash-crash 事件是几年前的海啸,在许多经纪人申请破产和 KMPG 和其他 court-named 监管机构正在清算未被发现的灰烬之后 pendin-orders许多年后 ),所以到期 Risk-Management 是必须的,永远不要相信一个乐观的假设 trade-order 会被填满 at-an-exact-price。有技术和法律支持的原因,为什么即使对于 pending-orders.

也不总是遵守这一点