较早的项目 - 页 2

 
Alexey Volchanskiy:
我甚至认为这是在MT4版本<600时使用的。
http://forex-ratings.ru/forex-brokers/4digits-forex-brokers.php
Брокеры Форекс 2018 с четырехзначными котировками - Рейтинг брокеров Форекс на Forex-ratings.ru
Брокеры Форекс 2018 с четырехзначными котировками - Рейтинг брокеров Форекс на Forex-ratings.ru
  • forex-ratings.ru
В настоящее время различные брокеры предлагают торговлю с разной точностью значения котировок. Если Вас больше устраивает система котирования с так называемыми, старыми пунктами, следует выбирать брокерскую компанию из списка брокеры с четырехзначными котировками. Существенной разницы между новыми и старыми системами котирования нет, однако...
 
还有呢,我不知道4位数的经纪人,贴到什么地方?他们都是4位数,已经有很长一段时间了。
 
Alexey Volchanskiy:
还有呢,我不知道4位数的经纪人,贴到什么地方?他们 是4位数,已经有很长一段时间 了。

即使是现在,它们也都是4位数的。


我惊讶地发现,网站上的EUN账户也写成了4位数,但终端的引号却是5位数。


 
Alexey Viktorov:

即使是现在,它们也都是4位数的。


我很惊讶地看到,网站上的ECN写成了4位数,但终端的报价却是5位数。


他们在网站上写什么,没有人关心。他们在那里也写零点差。)他们对真正的终端感兴趣。

 

混乱的产生是因为 "点 "这个词对于主要工具(欧元兑美元、英镑兑美元、美元兑瑞士法郎、美元兑日元)来说,大多数交易者指的是0.0001。在MQL4和MQL5中,一个点是一个符号价格的最小单位,由Point()函数获得。结果,程序员写了-5 * Point(),期望得到5分,但在5个单位的账户上,他或她得到0.5分。

主题启动器提供的检查只在特定情况下起作用。它不能被普遍使用。出路是允许用户在设置EA 时选择他们心目中的哪些点。如果我们指的是仪器上精度为5位的 "旧 "点,专家顾问必须将所有与点有关的参数值乘以10。如果我们指的是 "新 "点或精确度为4位数的仪器,就不要做任何事情。也就是说,这必须由用户自己控制,而专家顾问只根据用户指定的行动选项,对数值进行倍增或不倍增。

 
Ihor Herasko:

混乱的产生是因为 "点 "这个词对于主要工具(欧元兑美元、英镑兑美元、美元兑瑞士法郎、美元兑日元)来说,大多数交易者指的是0.0001。在MQL4和MQL5中,一个点是一个符号价格的最小单位,由Point()函数获得。结果,程序员写了- 5 * Point(),期望得到5分,但在5个单位的账户上,他或她得到0.5 分。

主题启动器提供的检查只在特定情况下起作用。它不能被普遍使用。出路是允许用户在设置EA 时选择他们心目中的哪些点。如果我们指的是仪器上精度为5位的 "旧 "点,专家顾问必须将所有与点有关的参数值乘以10。如果我们指的是 "新 "点或精确度为4位数的仪器,就不要做任何事情。也就是说,这必须由用户自己控制,而专家顾问只根据用户指定的行动选项,对数值进行倍增或不倍增。

是程序员不喜欢阅读帮助))。有一个

符号_POINT

单个点的价值

и

符号_交易_刻度线大小

最低价格变化


但我是以Value_in_currency_deposit/1_lot计算的,这是最普遍的方式。以下是一个片段

enum ECalcPointMode
{
    EInPoint,           //В пунктах
    EInQuoteInstrument, //В котировке инструмента
    EInPrice4Lot,       //В валюте депозита/лот
};
input ECalcPointMode    CalcPointMode   = EInPoint; 
input double            StopLoss        = 400;

double  ExtStopLoss;

int OnInit()
{
    switch(CalcPointMode)
    {
    case EInPoint:              
    //СЛ и ТП заданы в пунктах.
        ExtStopLoss = StopLoss * SymbolInfo.Point();
        ExtTakeProfit = TakeProfit * SymbolInfo.Point();
        break;
    case EInQuoteInstrument:    
    //СЛ и ТП заданы в котировке инструмента, например 0.00500 == 500 пунктов для 5-значной котировки или 50 п. для 4-х значной/
        ExtStopLoss = StopLoss;
        ExtTakeProfit = TakeProfit;
        break;
    case EInPrice4Lot:          
    //СЛ и ТП заданы в наиболее универсальном варианте, в единицах валюты депозита для одного лота текущего инструмента/
    //Например, для пары EURUSD и валюты депозита USD, ТП = $500/лот для лота 100000 ед. базовой валюты пары EUR, будет равен 0.00500 в котировке EURUSD.
        if(!Price2Quote(ExtStopLoss, StopLoss, _Symbol))
        {
            Alert("OnInit: function Price2Quote returns false", "  StopLoss=", DoubleToString(StopLoss, _Digits), "  Symbol=", _Symbol);
            return INIT_PARAMETERS_INCORRECT;
        }
 
Alexey Volchanskiy:

是程序员不喜欢阅读帮助))。有

符号_点

单个点的价值

и

符号_交易_刻度线大小

最低价格变化

不幸的是,我不明白你想说什么。最低价格变化(不是测量)与当前的问题有什么关系?

 
Ihor Herasko:

不幸的是,我不明白你这句话是什么意思。最小的价格变化(不是测量)与眼前的问题有什么关系?

这是应被视为一个点的值
 
Alexey Volchanskiy:
这是被视为点的值

哪一个?价格的变化?所以在欧元中,它等于Point() 返回的值。

 
Ihor Herasko:

哪一个?价格的变化?所以在欧元中,它等于Point()返回的值。

是的,但除了欧元,还有其他货币、期货、股票、期权。我们现在讨论的是什么--适当的patsy点概念,还是如何正确计算真实的价格范围,例如Real_SL=价格+SL?我说过我的方法,所有这些观点都是假的。