not*_*bit 5 algorithmic-trading metatrader4 mql4
我试图找出在 MQL4 (Metatrader4) 中在Expert Advisor 中发送订单时是否有正确的方法来设置止损(SL) 和获利 (TP) 水平。功能模板是:
OrderSend( symbol, cmd, volume, price, slippage, stoploss, takeprofit, comment, magic, expiration, arrow_color);
因此,我很自然地尝试执行以下操作:
double dSL = Point*MM_SL;
double dTP = Point*MM_TP;
if (buy) { cmd = OP_BUY; price = Ask; SL = ND(Bid - dSL); TP = ND(Ask + dTP); }
if (sell) { cmd = OP_SELL; price = Bid; SL = ND(Ask + dSL); TP = ND(Bid - dTP); }
ticket = OrderSend(SYM, cmd, LOTS, price, SLIP, SL, TP, comment, magic, 0, Blue);
Run Code Online (Sandbox Code Playgroud)
然而,有多少脚本和 EA 就有多少变种。到目前为止,我遇到了这些。
在MetaEditor的MQL4 参考中,文档说要使用:
OrderSend(Symbol(),OP_BUY,Lots,Ask,3,
NormalizeDouble(Bid - StopLoss*Point,Digits),
NormalizeDouble(Ask + TakeProfit*Point,Digits),
"My order #2",3,D'2005.10.10 12:30',Red);
Run Code Online (Sandbox Code Playgroud)
在“相同”的在线文档中,他们使用:
double stoploss = NormalizeDouble(Bid - minstoplevel*Point,Digits);
double takeprofit = NormalizeDouble(Bid + minstoplevel*Point,Digits);
int ticket=OrderSend(Symbol(),OP_BUY,1,price,3,stoploss,takeprofit,"My order",16384,0,clrGreen);
Run Code Online (Sandbox Code Playgroud)
假设我们对 a 感兴趣OP_BUY并且符号正确,我们可以选择将 SL 和 TP 值基于:
bid, bid
bid, ask
ask, ask
ask, bid
Run Code Online (Sandbox Code Playgroud)
那么为买入设置 SL 和 TP 的正确方法是什么?
(使用各种变体的优点或缺点是什么?)
编辑:2018-06-12
除了一些细节,答案其实很简单,虽然不是很明显。也许是因为 MT4 仅在图表上显示Bid价格(默认情况下),而不是Ask和Bid。
所以因为:Ask > Bid而且Ask - Bid = Slippage,只要我们知道滑点,我们选择哪个并不重要。然后根据您在图表上遵循的价格,您可能希望决定使用一个而不是另一个,相应地增加或减少滑点。
所以,当您使用测量工具来获取皮普的当前显示的价格差异,您VS“精确” SL / TP的设置,你需要牢记这一点。
因此,为了避免必须将 Slippage 放在我上面的代码中,我使用了以下内容OP_BUY:(TP = ND(Bid + dTP);相反的OP_SELL.)
如果您买入,您的平仓价OP_BUY为Ask(止损,止盈)Bid。
如果卖出,OP_SELL则按价格进行操作Bid,并以 收盘Ask。
止损和止盈均应至少STOP_LEVEL * Point()与当前价格保持在一定距离内才能平仓(Bid买入、Ask卖出)。
有可能STOP_LEVEL为零 - 在这种情况下(当 MT4 接受订单时)经纪商可能会根据自己的算法拒绝该订单(条款和条件可能将其称为“浮动止损位”规则或一些类似的营销明智的“重新调整”)穿着”术语)。
建议发送OrderSend()SL和TP为零值的请求,并在看到订单发送成功后进行修改。有时它不是必需的,有时甚至是强制性的。
您给我们的两个链接之间没有区别:您可以计算 SL 和 TP,然后将它们传递到函数中或基于OrderOpenPrice()+/-计算它们distance * Point()。
| 归档时间: |
|
| 查看次数: |
7129 次 |
| 最近记录: |