T/P不能正常工作

 
ticket=OrderSend(Symbol(),OP_BUY,0.1,Ask,3,0,Ask+0.01,"BFS_Orders",0,0,Green);

ticket=OrderSend(Symbol(),OP_SELL,0.1,Bid,3,0,Bid-0.01,"Second_Orders",0,0,Green);

你好。

我正在运行策略测试器,我在欧元兑美元中使用上述代码下单。 在这里,我为每笔交易确定了100点的目标。但是我没有得到它。有些时候,我得到102,-10,78等...

232 2009.12.08 13:20 t/p 120 0.10 1.4762 0.0000 1.4762 98.96 21356.75

233 2009.12.11 14:30 t/p 113 0.10 1.4662 0.0000 1.4662 59.44 21416.19

234 2009.12.15 08:29 t/p 109 0.10 1.4562 0.0000 1.4562 26.16 21442.35

235 2009.12.17 02:02 t/p 104 0.10 1.4460 0.0000 1.4460 -5.04 21437.31

236 2009.12.17 09:46 t/p 103 0.10 1.4360 0.0000 1.4360 -6.08 21431.23

237 2009.12.22 15:47 t/p 102 0.10 1.4258 0.0000 1.4258 -10.24 21420.99

239 2010.01.04 01:44 t/p 121 0.10 1.4257 0.0000 1.4257 87.52 21508.51

301 2010.08.02 13:45 t/p 155 0.10 1.3130 0.0000 1.3130 129.70 23807.02

302 2010.08.03 08:14 t/p 154 0.10 1.3230 0.0000 1.3230 130.03 23937.05

304 2010.08.05 12:42 t/p 156 0.10 1.3230 0.0000 1.3230 100.00 24037.05

305 2010.08.06 14:08 t/p 153 0.10 1.3330 0.0000 1.3330 132.01 24169.06

为什么会发生这种情况?提前感谢。

-Krishna.


 

我无法解释-10,但对于其他......嗯,也许是这个?我不确定..:

OP_BUY似乎是正确的,因为你在Ask价格买入后立即支付了价差,但你的OP_SELL没有考虑价差。你在买入价上 "卖出",买入价下降到Bid-0.1(下降100点),然后你在卖出价上 "买回",这样点差就吃掉了这100点的一部分。如果经纪人是固定点差,你可以将TP设置为Bid-0.1-MarketInfo(Symbol(),MODE_SPREAD)

除此之外,像102这样的小误差可以解释为。

1.初始订单的滑点(因为TP价格是根据你请求订单的价格计算的,而不是订单填满 的实际价格)。

2.价格可能在1个点内超过你的TP

3.当你的平仓单被执行时,价格可能再次移动

 
alladir:

我无法解释-10,但对于其他......嗯,也许是这个?我不确定..:

OP_BUY似乎是正确的,因为你在Ask价格买入后立即支付了价差,但你的OP_SELL没有考虑价差。你在买入价上 "卖出",买入价下降到Bid-0.1(下降100点),然后你在卖出价上 "买回",这样点差就吃掉了这100点的一部分。如果经纪人是固定点差,你可以将TP设置为Bid-0.1-MarketInfo(Symbol(),MODE_SPREAD)

除此之外,像102这样的小误差可以解释为。

1.初始订单的滑点(因为TP价格是根据你请求订单的价格计算的,而不是订单填满的实际价格)。

2.价格可能在1个点内超过你的TP

3.当你的平仓单被执行时,价格可能再次移动


好的。但为什么会有-ve(Loss)值呢?
 
krishna_gopal_2:

你好。

我正在运行策略测试器,我在欧元兑美元中使用上述代码下单。 在这里,我为每笔交易确定了100点的目标。但是我没有得到它。有些时候,我得到102,-10,78等...

232 2009.12.08 13:20 t/p 120 0.10 1.4762 0.0000 1.4762 98.96 21356.75

233 2009.12.11 14:30 t/p 113 0.10 1.4662 0.0000 1.4662 59.44 21416.19

234 2009.12.15 08:29 t/p 109 0.10 1.4562 0.0000 1.4562 26.16 21442.35

235 2009.12.17 02:02 t/p 104 0.10 1.4460 0.0000 1.4460 -5.04 21437.31

236 2009.12.17 09:46 t/p 103 0.10 1.4360 0.0000 1.4360 -6.08 21431.23

237 2009.12.22 15:47 t/p 102 0.10 1.4258 0.0000 1.4258 -10.24 21420.99

239 2010.01.04 01:44 t/p 121 0.10 1.4257 0.0000 1.4257 87.52 21508.51

301 2010.08.02 13:45 t/p 155 0.10 1.3130 0.0000 1.3130 129.70 23807.02

302 2010.08.03 08:14 t/p 154 0.10 1.3230 0.0000 1.3230 130.03 23937.05

304 2010.08.05 12:42 t/p 156 0.10 1.3230 0.0000 1.3230 100.00 24037.05

305 2010.08.06 14:08 t/p 153 0.10 1.3330 0.0000 1.3330 132.01 24169.06

为什么会发生这种情况?提前感谢。

-Krishna.


这些数字是怎么来的?是你在计算它吗?如何计算?
 

不知道 :/ 不过我有一些问题。

可能是我的经纪人的原因,但我不能用OrderSent设置TP,我必须先开单,然后用OrderModify设置SL和SP。

还有,那些亏损的交易员会怎么样呢?

 
alladir:

另外,那些亏损的交易员会怎么样? 他们就这样一直开下去?


我会一直等着,直到交易结束时有利润。
 
angevoyageur:
这些数字是怎么来的?是你在计算它吗?如何计算?

krishna_gopal_2:

我将等待,直到交易结束并盈利。

所以你不需要解释,因为你没有回答。
 
alladir:

我无法解释-10,但对于其他......嗯,也许是这个?我不确定..:

OP_BUY似乎是正确的,因为你在Ask价格买入后立即支付了价差,但你的OP_SELL没有考虑价差。你在买入价上 "卖出",买入价下降到Bid-0.1(下降100点),然后你在卖出价上 "买回",这样点差就吃掉了这100点的一部分。如果经纪人是固定点差,你可以将TP设置为Bid-0.1-MarketInfo(Symbol(),MODE_SPREAD)

除此之外,像102这样的小误差可以解释为。

1.初始订单的滑点(因为TP价格是根据你请求订单的价格计算的,而不是订单填满的实际价格)。

2.价格可能在1个点内超过你的TP

3.当你的平仓单被执行时,价格可能再次移动

策略测试器中 没有滑点,除非使用第三方工具来实现滑点。 在处理订单的过程中,价格不能移动,这就是策略测试器。
 
krishna_gopal_2:

你好。

我正在运行策略测试器,我在欧元兑美元中使用上述代码下单。 在这里,我为每笔交易确定了100点的目标。但是我没有得到它。有些时候,我得到102,-10,78等...

232 2009.12.08 13:20 t/p 120 0.10 1.4762 0.0000 1.4762 98.96 21356.75

233 2009.12.11 14:30 t/p 113 0.10 1.4662 0.0000 1.4662 59.44 21416.19


你在哪里将价差计入你的计算中?你知道OP_BUY是以SELL结束的吗?而SELL是以BID发生的吗?
 
RaptorUK:
在策略测试器中没有滑点,除非使用第三方工具来实现滑点。 在处理订单时,价格不能移动......这就是策略测试器。

这就是我的观点,在OP_SELL中,他拿了100点,然后支付点差,所以最终的利润不会是预期的100点。

而OP_BUY则很好,因为他是从最初的Ask价格开始计算的。

RaptorUK
除非使用第三方工具,否则在策略测试器中不会出现滑点。 在处理订单的过程中,价格不会移动。

啊,是的,我忘了这一点,我还没有真正使用过反向测试 :o
 
很好。现在我应该怎么做才能获得更多或更少的100点。有什么公式可以计算点差吗?