← К каталогу
Исходный код · ID 1412

usd against all.mq4

Вы автор или правообладатель?

Сообщите нам, если считаете, что материал размещён без разрешения.

Краткий обзор

О программе

Индикатор отображает на графике MetaTrader 4 динамику доллара США против семи основных валютных пар: USDJPY, USDCHF, USDCAD, NZDUSD, AUDUSD, GBPUSD и EURUSD. Для каждой пары рассчитывается процентное изменение цены от открытия текущего бара до текущего значения Bid в рамках выбранного таймфрейма.

Результат отображается в виде визуальных полос-шкал из символов, а также числового процентного значения и кода валюты. Направление движения (рост или падение) определяется по цвету текста и шкалы.

Индикатор создаёт графические объекты-метки на графике при инициализации и обновляет их при каждом новом тике. Включает вспомогательные функции для определения таймфрейма по строковому параметру и выбора цвета отображения.

Настройки программы

НастройкаОписание
X_DISTANCE Горизонтальное смещение создаваемых графических объектов на графике в пикселях.
Y_DISTANCE Вертикальное смещение создаваемых графических объектов на графике в пикселях.
tab_color Цвет разделительных линий, отображаемых на графике.
text_color Цвет текста и шкал в диапазоне от 0 до 20, определяется через внутреннюю функцию выбора цвета.
note Текстовый параметр, не используемый в расчётах индикатора.
Period_ Таймфрейм для расчёта: M1, M5, M15, M30, H1, H4, D1, W1, MN. Значение 0 означает текущий таймфрейм графика.
Получить полный код

Поиск по коду файла

#property indicator_chart_window
extern int X_DISTANCE=0; // ????????. ?? ???????????
extern int Y_DISTANCE=0; // ????????. ?? ?????????
extern color tab_color=Lime; // ???? ????? 
extern int text_color=16; // 0-20 ??????? ??????
extern string note="Period_(0,M1,M5,M15,M30,H1,H4,D1,W1,MN)";
extern string Period_="0";//M1,M5,M15,M30,H1,H4,D1,W1,MN . ???? 0- ?????? ???????? ???????.

string currency_pair[7]= {"USDJPY","USDCHF","USDCAD","NZDUSD","AUDUSD","GBPUSD","EURUSD"};
int line_x[4]={17,32,45,153,170};// ?????????? ????????.?????

int init()
  {
      // код доступен только после оплаты
   }

int deinit()
  { 
    int n,m;
      for( n=0;n<7;n++)  // ??????? ??? ??'???? 
     {  
       ObjectDelete("perc"+n);
       ObjectDelete("curr"+n);
       if(n<5) ObjectDelete("line-x"+n);  

      for( m=0;m<=20;m++)
     {
       ObjectDelete(m+"gist"+n);
       if(m<2) ObjectDelete(n+"line-y"+m);
                               } } 
       ObjectDelete("text");                        
   return(0);
  }

int start()
  {
      // код доступен только после оплаты
   }
  int i,w,z;
  for( z=0;z<7;z++)  
    { 
      for( w=0;w<=20;w++) {
       ObjectDelete(w+"gist"+z); //??????? ??????????? ????? ???????????
                              } 
  string minus=""; 
  double percent=0; 
  int flag=0;
  int count=0;           

   RefreshRates();
   double bid=MarketInfo(currency_pair[z], MODE_BID );
   double open=iOpen(currency_pair[z],f_Timeframe(Period_),0);
   double high=iHigh(currency_pair[z],f_Timeframe(Period_),0);
   double low=iLow(currency_pair[z],f_Timeframe(Period_),0);   

   if(bid>open && high!=open)   
       { percent=(bid-open)/(high-open)*100; // ????.????????? ????
         flag=1;
         count=NormalizeDouble(percent/5,0); }
       else {
         if(bid<open && low!=open)
       { percent=(open-bid)/(open-low)*100; // ????.????????? ????
         flag=(-1);  
         count=NormalizeDouble(percent/5,0); } }

    if(percent>100)percent=100;// 
    if(count>=20)count=20;   

    if(z<3) flag=flag*(-1);   // ??????. "USDJPY","USDCHF","USDCAD"
    if(flag==(-1)) minus="-"; 

   ObjectCreate("perc"+z, OBJ_LABEL, 0, 0, 0);
   ObjectSet("perc"+z, OBJPROP_C

Показано первые 50% кода (символов: 5056)

Открыть по тарифу

Купите тариф с пакетом открытий или войдите, если тариф уже есть. Открытый файл останется в вашем кабинете навсегда.

Разовая покупка файла

На этой странице откроется полный исходный код файла вместо ознакомительного фрагмента.

Чтобы оформить заказ, введите email и перейдите к оплате.

Стоимость полного кода
505,60₽ ≈ $6.18