达成交易而不是立场 - 页 3

 
doshur:

但如果软件被重新启动,所有的数据就会消失。

其次,头寸中的平均价格 将被使用,而不是交易开盘价。

AmitJamuda的解决方案是在MT5/mql5中实现你所想的唯一方法,当然这不是一个简单的任务,你必须管理数据的持久性。

总之,你想要的是用MT5/mql5做和MT4/mql4一样的事情。那为什么不使用MT4/mql4?这是很容易做到的。

 
angevoyageur:

AmitJamuda的解决方案是在MT5/mql5中实现你所想的唯一方法,当然,这不是一个简单的任务,你必须管理数据的持久性。

总之,你想要的是用MT5/mql5做和MT4/mql4一样的事情。那为什么不使用MT4/mql4?这是很容易做到的。

我理解。如果MT4策略测试器 和MT5一样快,那么事情就会变得更加简单和快速。
 
angevoyageur:
不,你错了。当你 "关闭 "部分头寸时,未平仓价格不会改变。

请仔细研究这个例子。公开价格没有变化,变化的是平均公开价格。

考虑到其中一笔交易已经结束,请看平均价格 的差异。

Documentation on MQL5: Standard Constants, Enumerations and Structures / Indicator Constants / Price Constants
Documentation on MQL5: Standard Constants, Enumerations and Structures / Indicator Constants / Price Constants
  • www.mql5.com
Standard Constants, Enumerations and Structures / Indicator Constants / Price Constants - Documentation on MQL5
 
doshur:

但如果软件被重新启动,所有的数据就会消失。

其次,将使用头寸中的平均价格 而不是交易开仓价。

如果你担心软件被重启,请使用文件而不是数组。
 
AmitJamuda:

请仔细研究这个例子。公开价格没有变化,变化的是平均公开价格。

考虑到其中一笔交易已经结束,请看平均价格 的差异。

反对。我是说平均开盘价。

举例来说

我在100和50的位置开了两笔交易。现在的价格是75,我决定关闭在50的交易。我的利润将是0,对吗?

 
AmitJamuda:

请仔细研究这个例子。公开价格没有变化,变化的是平均公开价格。

考虑到其中一笔交易已经结束,请看平均价格 的差异。

这是不可能的。只有一个仓位的开仓价是由顺向交易的平均价格计算的。当你做反向交易时,盈亏是由仓位的开仓价和反向交易的价格之间的差额计算的。仓位的成交量会因该笔出场交易的成交量而减少,未平仓价格不会改变。
 
doshur:

错了。我是指平均开盘价。

比如说

我以100和50的价格开了两笔交易。现在的价格是75,我决定关闭在50的交易。我的利润将是0,对吗?

看来你还是不明白什么是交易,你可以说一个交易是开放或关闭的,这没有意义。一笔交易有一个方向,它可以是进或出(或进/出,但保持简单)。一笔朝内的交易会增加你的实际仓位,然后通过平均价格 计算出该仓位的开仓价格。抛出方向的交易减少了你的头寸,开仓价格不会改变。

在你的例子中,你的盈亏取决于你的头寸/交易的方向。你是在75的位置买入还是卖出?你在50点有一笔新的交易,是顺势还是逆势?

仓位
交易
结果
在75点买入
在50点的交易=买入(IN)
以新的平均价格买入头寸。无盈亏
在75价位买入
在50价位成交=卖出(出)。
以不变的价格买入。盈亏=-25*手数
在75点卖出
在50点成交=买入(出局)。
以不变的价格卖出的位置。盈亏=+25 *手数
在75点卖出
在50点成交=卖出(进)。
以新的平均价格卖出头寸。无盈亏
Documentation on MQL5: Standard Constants, Enumerations and Structures / Indicator Constants / Price Constants
Documentation on MQL5: Standard Constants, Enumerations and Structures / Indicator Constants / Price Constants
  • www.mql5.com
Standard Constants, Enumerations and Structures / Indicator Constants / Price Constants - Documentation on MQL5
 
angevoyageur:

看来你还是不明白什么是交易,你可以说交易是开放或关闭的,这毫无意义。一笔交易有一个方向,它可以是进或出(或进/出,但保持简单)。一笔朝内的交易会增加你的实际仓位,然后通过平均价格 计算出该仓位的开仓价格。抛出方向的交易减少了你的头寸,开仓价格不会改变。

在你的例子中,你的盈亏取决于你的头寸/交易的方向。你是在75的位置买入还是卖出?你在50点有一笔新的交易,是顺势还是逆势?

仓位
交易
交易结果
在75价位买入
在50价位成交=买入(IN)
以新的平均价格买入头寸。无盈亏
在75价位买入
在50价位成交=卖出(出)。
以不变的价格买入。盈亏=-25*手数
在75点卖出
在50点成交=买入(出局)。
以不变的价格卖出的位置。盈亏=+25 *手数
在75点卖出
在50点成交=卖出(进)。
以新的平均价格卖出头寸。无盈亏

抛开术语不谈。让我们使用通俗的术语。

在我举的例子中。我在价格100(1手)和50(1手)时买入。我的平均开仓价将是75,对吗?

当价格在75时,我决定关闭1手。对于1手的平仓,我的利润将是0,对吗?

 
 
doshur:

抛开术语。让我们使用通俗的术语。

如果你不使用正确的术语,你就无法进行有效的沟通 ......

MetaTrader 5中的订单、头寸和交易