Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 6. - страница 835

 


 
woin2110:
Всё дело в дибильном брокере который на дневном графике отрисовывает понедельник как воскресную свечу, а вместо понедельника каким-то хххудожником нарисована своя свеча. Вот теперь и думаю как корректней взять данные прошлых дней. Нужно сделать эксперта под всех брокеров. А имеенно найти долбаный минимум и максимум последнего рабочего дня.
Ну, тогда надо искать последний бар пятницы, желательно минутный. А понедельник считать понедельником с первого бара М1, для которого DayOfWeek()=1 (или по разнице временных поясов считать).
 
Kirill875:

Простите за возможные каракули, это мой первый.

Все в нем устраивает кроме одного, хотелось бы увидеть отображение показателей с часового графика на м5. 

int sh = iBarShift(NULL, 60, Time[i], false);

Close[i] => iClose(NULL,60,sh)

iMA(NULL,60,....,sh)

 
evillive:

Через iHighest(),iLowest(), сколько баров М5 в сутках известно, смещение до окончания прошлых суток, думаю, тоже можно высчитать.

Сделал расчёт на часовике, проблема решена, спасибо огромное.

   

   int Min=iLowest(NULL, PERIOD_H1, MODE_LOW , 24, Hour());

   int Max=iHighest(NULL, PERIOD_H1, MODE_HIGH, 24, Hour());

   price1=iLow(NULL, PERIOD_H1,Min);

   price2=iHigh(NULL,PERIOD_H1,Max);

 И вот такой мелкий вопрос, как определить ситуацию когда терминал только запустился.

Мне необходимо запустить  del=ObjectsDeleteAll(0,OBJ_HLINE); при очередном запуске терминала

 
woin2110:

 И вот такой мелкий вопрос, как определить ситуацию когда терминал только запустился.

Мне необходимо запустить  del=ObjectsDeleteAll(0,OBJ_HLINE); при очередном запуске терминала

Значит надо скрипт запускать после старта терминала, с этой строкой в нём. Автозапуск обсуждался здесь.
 
woin2110:
Но, это возможно только через данные дневного графика.

А что ты имеешь ввиду под данными дневного графика? Переключение графика? Не надо переключать.

хай_вчерашнего_дня = iHigh(_Symbol, PERIOD_D1, 1);
 
Kirill875:
evillive, Спасибо за отклик, не могли бы Вы ткнуть меня носом в какую часть кода это нужно вставить.
int sh = iBarShift(NULL, 60, Time[i], false); - в главный цикл расчёта, остальные - замена везде, где встречается.
 

Привет всем участникам! Помогите пожалуйста наладить индикаторы. Не силен в этих науках.

1. индикатор SimpleBars - не сохраняются настройки (цвет, линии и пр.) при смене таймфрейма, при увеличении или уменьшении графика и тд. В шаблоне тоже настройки теряются. Когда запускаю МТ4, постоянно приходится поправлять. (( Использую просто как индикатор, не в советнике. Помогите наладить кто может.

 

И еще один индикатор - 2MA с облаками. Тоже не сохраняет настройки. Прям беда. Как-то с другими индикаторами нет проблем, а это один за одним с глюками. Помогите, поправьте пожалуйста.

 

//+------------------------------------------------------------------+

//|                                            ytg_DveMashki_ind.mq4 |

//|                                                     Yuriy Tokman |

//|                                            yuriytokman@gmail.com |

//+------------------------------------------------------------------+

#property copyright "Yuriy Tokman"

#property link      "yuriytokman@gmail.com"


#property indicator_chart_window

#property indicator_buffers 2

//#property indicator_color1 //Green

//#property indicator_color2 //Red

//#property indicator_width1 //4

//#property indicator_width2 //4

//----

extern color color1 = Green;

extern color color2 = Red;

extern int width1 = 0;

extern int width2 = 0;

extern int style1 = 0;

extern int style2 = 0;

extern int ma_1 = 25;

extern int ma_2 = 50;

extern int method = 0;

extern int price = 0;

//---- buffers

double ExtMapBuffer1[];

double ExtMapBuffer2[];

//----

int ExtCountedBars=0;

//\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

int init()

  {

//---- indicators

   SetIndexStyle(0,DRAW_HISTOGRAM, style1, width1, color1);

   SetIndexBuffer(0, ExtMapBuffer1);

   SetIndexStyle(1,DRAW_HISTOGRAM, style2, width2, color2);

   SetIndexBuffer(1, ExtMapBuffer2);

   IndicatorShortName("yuriytokman@gmail.com");

   SetIndexLabel(0,"yuriytokman@gmail.com");

   SetIndexLabel(1,"yuriytokman@gmail.com");   

//----

   SetIndexDrawBegin(0,10);

   SetIndexDrawBegin(1,10);

//---- indicator buffers mapping

   SetIndexBuffer(0,ExtMapBuffer1);

   SetIndexBuffer(1,ExtMapBuffer2);

     

Comment("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n yuriytokman@gmail.com");


   return(0);

  }

//\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n

int start()

  {

   if(Bars<=10) return(0);

   ExtCountedBars=IndicatorCounted();

//---- check for possible errors

   if (ExtCountedBars<0) return(-1);

//---- last counted bar will be recounted

   if (ExtCountedBars>0) ExtCountedBars--;

   int pos=Bars-ExtCountedBars-1;

   while(pos>=0)

     { 

      ExtMapBuffer1[pos]=iMA(Symbol(),0,ma_1,0,method,price,pos);

      ExtMapBuffer2[pos]=iMA(Symbol(),0,ma_2,0,method,price,pos);

    pos--;

     }

//----

   return(0);

  }

//\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n 

 
Roman_Bryansk:

Привет всем участникам! Помогите пожалуйста наладить индикаторы. Не силен в этих науках.

1. индикатор SimpleBars - не сохраняются настройки (цвет, линии и пр.) при смене таймфрейма, при увеличении или уменьшении графика и тд. В шаблоне тоже настройки теряются. Когда запускаю МТ4, постоянно приходится поправлять. (( Использую просто как индикатор, не в советнике. Помогите наладить кто может.


Для кода есть кнопка сверху в панели редактирования сообщения или комбинация Ctrl+Alt+M, код становится красивым и читаемым. А про потери, ф-ция SetIndexStyle() имеет параметр цвета, используйте его, не стесняйтесь.
Причина обращения: