错误、漏洞、问题 - 页 2070

 
Viatcheslav Pashkov:

这与存款货币 有什么关系?

TickValue取决于手数和存款货币。搜索一下吧。

 
fxsaber:

TickValue取决于手数和存款货币。搜索一下吧。


这是什么乱七八糟的东西?如果你不知道--就不要写!

 
Viatcheslav Pashkov:

证券价格变化的最小步数,单位为点 MarketInfo( Symbol(),MODE_TICKSIZE) = 0.001 (gbpjpy)


而在存款货币MarketInfo( Symbol(),MODE_TICKVALUE)中符号价格变化的最小 步骤=52卢布(卢布账户)。


很明显,0.001不可能值52卢布!"。

它必须是5,2 p。

10的乘法是在哪里进行的?

MODE_LOTSIZE什么?
 
Kirill Belousov:
MODE_LOTSIZE什么?

100000

而且我不认为它能改变....。
 
MT5中的CTRL+B有时会停止工作。这只能通过重新启动终端来解决。
 
Viatcheslav Pashkov:

100000

而且我不认为它能改变....。

这些数值等于什么?

MarketInfo(Bond_Name,MODE_MARGININIT)

MarketInfo(Bond_Name,MODE_MARGINREQUIRED)

 
Kirill Belousov:

这些数值等于什么?

MarketInfo(Bond_Name,MODE_MARGININIT)

MarketInfo(Bond_Name,MODE_MARGINREQUIRED)


0.0

и

15713.24


我看到,保证金正好膨胀了10倍。我不明白为什么!该账户的杠杆率为500。重新登记。两种方式。同样的结果。
 
Viatcheslav Pashkov:

0.0

и

15713.24


我看到,保证金正好膨胀了10倍。我不明白为什么!该账户的杠杆率为500。重新登记。两种方式。同样的结果。

我不明白为什么你认为有10倍的差别。它似乎很好。

1点是一个价格变化,在这个价格变化中,1手(100,000英镑)的工具的价值变化了1个单位的基础货币(英镑)。

为了计算1点(0.01)的价值,我们需要将两种货币GBPUSD和USDJPY转换为美元,然后再将美元转换为卢布。

报价精度为0.001并不意味着一个刻度的值也会分裂。我们需要的是合同价格的1个单位的基础货币的变化。在当前的价格下,每个tick的价值(价格delta,用现金表示)都会发生变化。

至于保证金。你的保证金( 1手头寸 的保证金)。

100,000英镑(1手)/500杠杆=200英镑

200英镑*1.32357(英镑兑美元汇率)=264.174美元

15713.24卢布/59.32(汇率USDRUB)=264.889美元

考虑到我采用的是写这篇文章时的汇率,而你采用的是早一点的15713.24卢布(卢布更便宜),那么一切似乎都趋于一致。

 
Kirill Belousov:

报价精度为0.001并不意味着刻度值也将是小数。我们需要一个基础货币的1个单位的合同价格变化。在当前的价格下,每个tick的价值(价格delta,用现金表示)都会发生变化。



如果是这样的话,那是极其不符合逻辑的!显然,"√"是报价的最低精度!这个问题仍未解决。


而且保证金更容易,如果是每1手,那么所有正确的=15000的尾数。

 

这个OnCalculate 是真的吗?

int OnCalculate( const int rates_total, const int prev_calculated, const int, const double &[] );

的调用速度比标准的快,因为需要准备的时间序列较少?