[АРХИВ!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда - 4. - страница 235

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

Привет!

Подскажите, пожалуйста, есть ли оператор, способный заменять вычисления: = iHigh - iLow

чтобы определять высоту (длину) конкретного бара в пунктах?

Очень нужно! )

 
Tancor:

Привет!

Подскажите, пожалуйста, есть ли оператор, способный заменять вычисления: = iHigh - iLow

чтобы определять высоту (длину) конкретного бара в пунктах?

Очень нужно! )

Привет!

Нет! :-)

 
Lonely_man:
Подскажите,какая функция или строчка в коде отвечает за вызов свойств эксперта(с окошком ввода параметров)?Замечал у некоторых экспертов невозможность вызова данного окна,когда он работает на графике,т.е. посмотреть какие параметры заданы у эксперта можно только при первичном запуске,потом уже с графика посмотреть что там прописано никак.
Когда эксперт работает в окне валютной пары, то в верхнем правом углу будет смайлик. Нажми на него мышкой и появится окошко с входными параметрами.
 
paladin80:
Когда эксперт работает в окне валютной пары, то в верхнем правом углу будет смайлик. Нажми на него мышкой и появится окошко с входными параметрами.

В том-то и фокус,что это не на всех советниках работает.Вот и хотелось бы узнать почему.Внизу скрин,как должно вызываться окошко свойств(клик на график с экспертом-советники>свойства>всплывает окошко свойств) - но дело в том,что у нормаальных экспертов все вызывается(когда рынок подвижный слишком получается ну не с первого,но с 3-4 раза),НО у некоторых и с 20-го не вызывается окно свойств(и на нажимание на смайлик вообще никакой реакции).И я никак не могу понять где собака зарыта.Не совсем удобно каждый раз,чтоб поменять параметры(или просто посмотреть их)по новой кидать на график эксперта.Получается в коде должно быть что-то прописано.Вот и хотелось бы узнать ЧТО,т.к. сам никак недопетрю.

 

Чертте-что происходит. Индикатор то рисует, то нет. Я вписал предложенний вами код ниже своего, хоть и подумал, что ж єто за значения-то. Пиретянул индикатор на график. Есть красная черта!!!! Точно есть!!! Ура!!!!! И зиленая есть, даже две, одна просто вертикальная, удивительно, а главное есть!!! Я укріл чертами ваш код, компилировал снова ничего не миняется.

Я добавил синюю черту!!! Компилировал- есть и синяя черта!!!!!! Я поминял таймфрейм с Н1 на М30 Все черти исчезли!!!!!! Да,да, просто исчезли!! Я на М15, на Н4, снова на Н1 нигде черт нету!! Вот єто да!!

Я удалил индикатор с графика и посадил на график снова- черти все равно не появились!! Что же єто? Вот график, индюк на нем. Вот индюк типерь.

Я уходил из вопроса новичка ввиду начавшегося ниобичайного движения. Я конечно понял, что ви хотели сказать- что точки должни наполняться значениями подряд. Большое спасибо за придложений код!!

//+------------------------------------------------------------------+
//|                                          поиск вульфа Димона.mq4 |
//|                        Copyright 2012, MetaQuotes Software Corp. |
//|                                        http://www.metaquotes.net |
//+------------------------------------------------------------------+
#property copyright "Copyright 2012, MetaQuotes Software Corp."
#property link      "http://www.metaquotes.net"

#property indicator_chart_window

#property indicator_buffers 3
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_color3 DarkBlue

double ВерхняячертаBuffer1[];
double НижняячертаBuffer2[];
double СинняячертаBuffer3[];
 double вершина; 
 double основание_первого_снижения;
 double начало;
 double вершина_волны_3;
 
 int timeframe, start ;
 int бар_вершина ;
 int бар_основание_первого_снижения;
 int бар_начало;
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()

  {SetIndexStyle(0,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(0,ВерхняячертаBuffer1);//Alert ("SetIndexBuffer ",GetLastError( ) );
   SetIndexEmptyValue(0,0.0);
   
   SetIndexStyle(1,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(1,НижняячертаBuffer2);//Alert ("SetIndexBuffer ",GetLastError( ) ); 
   SetIndexEmptyValue(1,0.0);
   
   SetIndexStyle(2,DRAW_SECTION,STYLE_SOLID,2,CLR_NONE);//Alert ("SetIndexStyle ",GetLastError( ) );
  SetIndexBuffer(2,СинняячертаBuffer3);//Alert ("SetIndexBuffer ",GetLastError( ) ); 
   SetIndexEmptyValue(2,0.0);
//---- indicators




//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//----
   
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
   int    counted_bars=IndicatorCounted();
//----

  // for(int i=Bars; i>=0;i--)
  int i=Bars;
       бар_вершина=iHighest( NULL,  timeframe, MODE_HIGH, i, start ) ;
       вершина =High[ бар_вершина ];
       бар_основание_первого_снижения=iLowest( NULL,  timeframe, MODE_LOW, бар_вершина, start ) ;
       основание_первого_снижения=Low[ бар_основание_первого_снижения ];
       бар_начало=iLowest( NULL,  timeframe, MODE_LOW, бар_вершина*2, бар_вершина ) ;
       начало=Low[ бар_начало ];
       
      //   Alert ( " бар_вершина   ",бар_вершина  , " вершина  " , вершина ,
      //    " бар_основание_первого_снижения  " ,бар_основание_первого_снижения  , " основание_первого_снижения  " , основание_первого_снижения , 
      //    " бар_начало  " , бар_начало   , " начало  " , начало    );
  
    НижняячертаBuffer2[бар_начало]=начало;
    НижняячертаBuffer2[бар_основание_первого_снижения]=основание_первого_снижения;
    
     int бар_проверка=iLowest( NULL,  timeframe, MODE_LOW, 5, 150 ) ;
     double проверка=Low[ бар_проверка ];
    ВерхняячертаBuffer1[бар_проверка]=проверка;
    ВерхняячертаBuffer1[бар_основание_первого_снижения]=основание_первого_снижения;
   // Alert ( " бар_проверка   ",бар_проверка  , " проверка  " , проверка );
    
 //   ВерхняячертаBuffer1[0]=25;
//ВерхняячертаBuffer1[1]=25;
//ВерхняячертаBuffer1[2]=25;
//ВерхняячертаBuffer1[3]=25;
//ВерхняячертаBuffer1[4]=25;
//ВерхняячертаBuffer1[5]=25;
//ВерхняячертаBuffer1[6]=25;
//ВерхняячертаBuffer1[7]=25;
//ВерхняячертаBuffer1[8]=25;
//ВерхняячертаBuffer1[9]=25;
//ВерхняячертаBuffer1[10]=25;
//ВерхняячертаBuffer1[11]=25;
         for (i=0;i<100;i++){  СинняячертаBuffer3[i]= Open[i];}
          for (i=330;i<500;i++){  СинняячертаBuffer3[i]= Open[i];}

    
//----
   return(0);
  }
//+------------------------------------------------------------------+
 
MikeM:
Я использую DRAW_LINE. С DRAW_SECTION у меня недоразумения.

Спасибо!! Щас попробую. Стоп, а чего пробовать? Лине-сплошная черта, и ие надо заполнять точно поєлементно, а єто совсем другая песня- я уже секунд через 15 сообразил.
 
Lonely_man:
Подскажите,какая функция или строчка в коде отвечает за вызов свойств эксперта(с окошком ввода параметров)?Замечал у некоторых экспертов невозможность вызова данного окна,когда он работает на графике,т.е. посмотреть какие параметры заданы у эксперта можно только при первичном запуске,потом уже с графика посмотреть что там прописано никак.

если окно свойтв не вызывается во время работы - значит советник работает в зацикленом режиме
 
High1 = iHigh (Symbol(), PERIOD_W1, 0); // максимум этой недели
Low1 = iLow (Symbol(), PERIOD_W1, 0); // минимум этой недели

Есть такая штука в советнике, на демо и на реале всё в порядке, но хотелось бы и в тестере прогнать код, но в тестере максимальный таймфрейм D1, как написать функцию, если это возможно, что бы данные максимума и минимума текущей недели все таки были и в тестере ?

 
BeerGod:

Есть такая штука в советнике, на демо и на реале всё в порядке, но хотелось бы и в тестере прогнать код, но в тестере максимальный таймфрейм D1, как написать функцию, если это возможно, что бы данные максимума и минимума текущей недели все таки были и в тестере ?

А он разве так их не считывает, как Вы щас и написали? Вы проверьте в режиме визуализации по шагам через F12 отследить через принты значения этих переменных, которые Вы запрашиваете с неделек... Сова пускайте на минимальном, задействованном в сове таймфрейме.