T/P不能正常工作 - 页 2

 
krishna_gopal_2:
很好。现在我应该怎么做才能获得更多或更少的100点。有什么公式可以计算点差吗?
卖出价-买入价就是点差。
 
krishna_gopal_2:
好吧。现在我应该怎么做才能获得更多或更少的100点。有什么公式可以计算点差吗?
如果您正确设置了您的止损点,您将在策略测试器中 为您的获胜交易获得100点(或多或少,因为点位是模拟的)。
  • 如果你在X价(买入价)开了一个卖盘,那么将你的TP设置为买入价-100点。
  • 如果你在Y价(卖出价)开了一个买入价,那么将你的TP设置为ASK+100点。

关于你最初的帖子:

  • 要么你没有设置100点的TP
  • 或者你发布的交易并不成功
  • 或者你错误地计算了你的利润(点)。
  • 或者你的交易没有按TP平仓。
 
<br / translate="no">
  • 如果你在X价(买入价)开了一个卖出价,那么将你的TP设置为买入价-100点。
  • 如果你在Y价(卖出价)开了一个买入价,那么将你的TP设置为ASK+100点。


我认为这有一个小错误,我不确定...

就像我之前说的,对于OP_SELL,你以买入价开盘,然后以卖出价收盘...所以如果TP是买入价-100,你的利润将是100点减去点差。

另外,任何基于开仓时的买入价和卖出价的TP都是假设点差是恒定的。我最近对此做了很多研究,点差从来都不是完全恒定的。这在回溯测试中不会显示出来,因为MT4不保存买入价(我认为?它是否使用收盘价+当前价差?),但你也需要考虑现实世界的情况。

 
alladir:


  • 如果你在X价(买入价)开了一个卖出价,那么将你的TP设置为 买入价-100点。
  • 如果你在Y价(卖出价)开了一个买入价,那么将你的TP设置为 ASK+100点。

我认为这有一个小错误,我不确定...

就像我之前说的,在OP_SELL中,你以买入价开盘,然后以卖出价收盘...所以如果TP是买入价-100,你的利润将是100点减去点差。

另外,任何基于开仓时的买入价和卖出价的TP都是假设点差是恒定的。我最近对此做了很多研究,点差从来都不是完全恒定的。这在回测中不会显示出来,因为MT4不保存买入价(我认为它使用收盘价+当前点差),但你也需要考虑现实世界的情况。


让它首先打开交易,然后使用订单openprice( )修改它,将使它在所有账户上工作。
 
deVries:

首先让它打开交易,然后用它的orderopenprice()修改它,将使它在所有账户上工作。


不,这还是不对的。

对于空头订单,点差是在关闭订单时而不是之前,所以使用OrderOpenPrice仍然可以获得利润:100点减去关闭时的点差。

对于多头订单来说,获得100点的TP是很容易的。

对于短线订单,你必须使TP为OrderOpenPrice + 100 pips + 点差

(并希望点差接近恒定)。

 
alladir:


我认为这有一个小错误,我不确定......

就像我之前说的,在OP_SELL中,你以买入价开盘,然后以卖出价收盘......所以如果TP是买入价-100,你的利润将是100点减去点差。


另外,任何基于开仓时的买入价和卖出价的TP都是假设点差是恒定的。我最近对此做了很多研究,点差从来都不是完全恒定的。这在回溯测试中不会显示出来,因为MT4不保存买入价(我认为它使用收盘价+当前点差),但你也需要考虑现实世界的情况。

  • 对于卖出,交易以买入价(BID_OPEN)开盘,以卖出价收盘,所以当卖出价=BID_OPEN-100。利润=开盘价-收盘价=BID_OPEN-BID_OPEN+100=100。
  • 对于买入来说,交易以卖出价(ASK_OPEN)开盘,以平仓价收盘,所以当买入价=ASK_OPEN+100。利润=收盘价-开盘价=ASK_OPEN+100-ASK_OPEN=100。

不管是否有浮动点差这仍然是事实。

但是

  • 对于卖出,价格必须从开盘时的买入价移动到收盘时的买入价,所以从BID_OPEN到BID_OPEN - 100 - SPREAD_CLOSE。移动量是100+收盘时的价差。如果价差在接近收盘时被拉大,关闭交易的概率就会降低。
  • 对于买入,价格必须从ASK_OPEN - SPREAD_OPEN移动到ASK_OPEN + 100,所以在这里你从一开始就知道价格必须移动多少(100 + 开仓时的点差)。

你是对的,点差从来不是完全恒定的,你必须检查它并选择一个能提供他所承诺的东西的经纪人(检查它)。

 
deVries:

让它先打开交易,然后用订单openprice()修改它,就能使它在所有账户上工作。
你是对的,这是最简单的编程方法。但我不是在谈论任何编程语言,在编程之前,最好先了解它的工作原理。
 
angevoyageur:
  • 对于卖出,交易以买入价(BID_OPEN)开盘,以卖出价收盘,所以当卖出价=BID_OPEN-100。利润=开盘价-收盘价=BID_OPEN-BID_OPEN+100=100。


我还是个新手,所以如果我一直是错的,请原谅我。但我确信,对于一个短单,当买入价 达到TP水平时,TP被触发,但交易是用ASK price....,现在是周末,所以我不能测试,但真的.....,是不是这样?在空头交易中,TP是由ASK价格触发的,而在多头交易中是由BID价格触发的吗?如果是这样,在回测 中,当ASK价格不可用时,会发生什么?

至于点差,我写了一个tick收集器,然后将各种经纪商的点差绘制在一张图表上进行比较。我发现,除了新闻发布时,有些是完全恒定的,但有些的点差变化很大......有些甚至看起来像问价延迟了大约100ms(即价格突然下降时点差过大,而价格突然上升时点差过小)....

 
angevoyageur:
  • 对于卖出来说,交易以买入价(BID_OPEN)开盘,以收盘价收盘,所以当卖出价=BID_OPEN-100。利润=开盘价-收盘价=BID_OPEN-BID_OPEN+100=100。
  • 对于买入,交易以要价(ASK_OPEN)开盘,以成交价收盘,所以当买入价=ASK_OPEN+100。利润=收盘价-开盘价=ASK_OPEN+100-ASK_OPEN=100。

无论是否有浮动点差,这仍然是事实。

不,这是不正确的。 举一个假设的例子,交易开仓后立即平仓,损失是由于点差造成的。使用你上面的计算,卖出利润=开盘价-收盘价=BID_OPEN-BID_OPEN+0=0。但这不是正确的答案,因为必须要支付点差。

应该是这样 ...... 利润=开盘价-收盘价=BID_OPEN - ASK_OPEN + 0 = -Spread.但这是假设点差从开盘时间到收盘时间都是一样的。

 
alladir:


我还是个新手,所以如果我一直是错的,请原谅我。但我确信,对于一个短单,当买入价达到TP水平时,TP被触发,但交易是用ASK价格关闭的....,现在是周末,所以我不能测试,但真的.....,情况是不是这样的?TP是否在空头交易中使用ASK价格,在多头交易中使用BID价格?如果是,在回测中,当ASK价格不可用时,会发生什么?

别担心,我们都要经过这个阶段,反复测试,这是学习的最好方法。什么是关闭卖出交易?就是买入!所以这个买入是以卖出价进行的,哪个卖出价?卖出的TP。

周末的回测 给了你星期五晚上交易时段结束时的价差。问价总是简单的买入价+价差。在周末进行回测时,会给你很大的价差,因为一般来说,价差会在交易结束时扩大。