вопрос к программистам, инвертор котировок.

 
Доброго всем времени. Нужна такая штука, которая будет перерисовывать график цен из XXXUSD в USDXXX в идеале в отдельной вкладке или окне индикатора.
 

Форум по трейдингу, автоматическим торговым системам и тестированию торговых стратегий

Библиотеки: Symbol

fxsaber, 2018.12.06 14:12

// Пример создания перевернутого символа

#include <fxsaber\ThirdPartyTicks\CustomSymbol.mqh> // https://www.mql5.com/ru/code/20225

CUSTOMSYMBOL CustomSymb(StringSubstr(_Symbol, 3, 3) + StringSubstr(_Symbol, 0, 3) + StringSubstr(_Symbol, 6)); // Создали символ

double ReversePrice( const double Price )
{
  return(Price ? NormalizeDouble(1 / Price, _Digits) : 0);
}

void ReverseTick( MqlTick &Tick )
{
  Tick.bid = ReversePrice(Tick.bid);
  Tick.ask = ReversePrice(Tick.ask);
  Tick.last = ReversePrice(Tick.last);
}

bool ReverseTicks( MqlTick &Ticks[] )
{
  for (int i = ArraySize(Ticks) - 1; i >= 0; i--)
    ReverseTick(Ticks[i]);
    
  return(true);
}

bool GetTicks( MqlTick &Ticks[] )
{
  return(CopyTicks(_Symbol, Ticks) > 0);
}

void OnInit()
{
  MqlTick Ticks[];
  
  if (CustomSymb.IsCustom() && GetTicks(Ticks) && ReverseTicks(Ticks) &&
      (CustomSymb.AddTicks(Ticks) > 0) && (CustomSymb.DataToSymbol() > 0) && CustomSymb.On())
    ChartOpen(CustomSymb.Name, PERIOD_CURRENT); // Открыли график
}

void OnTick()
{  
  MqlTick Tick[1];
  
  if (CustomSymb.IsCustom() && SymbolInfoTick(_Symbol, Tick[0]) && ReverseTicks(Tick))
    CustomTicksAdd(CustomSymb.Name, Tick);
}

 
спасибо.. а как это превратить в файл .mq4? я в программировании не понимаю)
 
ronnetbox:
спасибо.. а как это превратить в файл .mq4? я в программировании не понимаю)

Это для MT5.

 
Сделайте Custom символ в мт5 с формулой 1/(XXXUSD).
 
Unicornis:
Сделайте Custom символ в мт5 с формулой 1/(XXXUSD).

Это не тоже самое, что предложил fxsaber, насколько я понимаю.

 
ronnetbox:
Доброго всем времени. Нужна такая штука, которая будет перерисовывать график цен из XXXUSD в USDXXX в идеале в отдельной вкладке или окне индикатора.

Нет ничего проще!  https://www.mql5.com/ru/code/20834

InvertCandle_Plus
InvertCandle_Plus
  • www.mql5.com
AnchoredMomentum_x10 Индикатор AnchoredMomentum_x10 отображает положение индикатора AnchoredMomentum с десяти разных таймфреймов. ATR_Normalize_Histogram Типичный осциллятор с использованием Average True Range в виде многоцветной гистограммы.