Рассчитать размер пункта для символов в MT4

Мой вопрос: Как я могу рассчитать размер пункта в MT4 (без проверки имени символа)?


Мой первый ответ основан на проверке имени символа:

Используйте переменную Digits для 5- или 4-значных символов и установите PipSize = 0,0001. если символы представляют собой дроби JPY, используйте другие значения и т. д. другие символы в акциях и индексах или спотовых металлах (например, серебро)

double pipSize = 0.0001;
//+------------------------------------------------------------------+
//| Expert initialization function                                   |
//+------------------------------------------------------------------+
int OnInit()
  {
//---
   if(StringFind("-,XAUUSD,Gold,GOLD,Gold.m,GOLD.m,-",","+Symbol()+",")>0){
    pipSize = 0.1; // updated
   }else if(StringFind("-,XAGUSD,Silver,SILVER,Silver.m,SILVER.m,-",","+Symbol()+",")>0){
    pipSize = 1/500;
   }
//---
   return(INIT_SUCCEEDED);
  }

person MohaMad    schedule 19.09.2017    source источник
comment
Я считаю, что MT4 не позволяет использовать имена переменных с точками. т.е. GOLD.m. (Мне не удалось использовать его без ошибок MetaEditor.)   -  person not2qubit    schedule 17.01.2020


Ответы (2)


ЗОЛОТО 1 пункт составляет 0,10, а не 0,01 (согласно COMEX)

double PIP = Point()*(Digits%2==1 ? 10 : 1); // for forex only
person Daniel Kniaz    schedule 20.09.2017
comment
спасибо @Daniel, я обновил свой код. но я ищу ответ на упомянутый вопрос. Как рассчитать размер пункта в MT4 (без проверки имени символа). - person MohaMad; 20.09.2017
comment
никак, только размер галочки. если форекс - как я показал (отредактировал свой ответ), но по разным инструментам иногда действительно непонятно, что такое пипс и сколько он стоит. - person Daniel Kniaz; 20.09.2017

Проблема в том, что определение размера пункта является субъективным (или, в лучшем случае, интерсубъективным). В MetaTrader это невозможно автоматизировать, если только вы не найдете брокера с параметром символа размера тика, равным вашему определению размера пункта для всех торговых инструментов.

person Enivid    schedule 07.10.2017