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

 
MaximuS60:

дабы не начать пальцем в небо, подожду ответа, ну или подсказку.
Зачем пальцем? Зачем в небо? Сюда. Там обязательно подскажут.
 
MaximuS60:

дабы не начать пальцем в небо, подожду ответа, ну или подсказку.

Наконец, заглянул в код! В нём учитывается и спред:

         if (zeroprice>Ask) //Хотите больше, поставьте несколько пипок*Point 

         if (zeroprice<Bid) //.
//                                                          











Но лучше учиться серьёзно, не на подсказках! Советник и дня не проработает без должной профессиональной опеки.

Трейдинг не игра, а сложная профессия, требующая знаний, кропотливой работы и часто нестандартных решений по причине непредсказуемости рынка. Желаю вам благоразумия!

 
artmedia70:

В строке

NULL означает текущий символ. Равно как и Symbol() - тоже текущий символ. Она у вас верно записана.

Вопрос: переменная RSI_1 какой тип имеет?



тип double

не знаю))) но я как исправил на NULL, вроде стало работать.

 

Всем привет!

Попробовал сделать индикатор, с трехдневным усреднением на основе своего пользовательского индикатора.

Рисует ровную линию. В чем может быть проблема?

#property indicator_chart_window
#property indicator_buffers 1
#property indicator_color1 Yellow

//--- buffers
double ExtMapBuffer1[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
//---- indicators
   SetIndexStyle(0,DRAW_LINE,0,2);
   SetIndexBuffer(0,ExtMapBuffer1);
   IndicatorDigits(Digits+1);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator deinitialization function                       |
//+------------------------------------------------------------------+
int deinit()
  {
//---- 
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| Custom indicator iteration function                              |
//+------------------------------------------------------------------+
int start()
  {
    int counted_bars=IndicatorCounted(),                      
    limit;
    double
    MA_1_t,                                                 
    MA_2_t,
    MA_3_t;
 
   if(counted_bars>0)
      counted_bars--;
   limit=Bars-counted_bars;
   for(int i=0;i<limit;i++)
   {
      MA_1_t=iCustom(NULL, 0, "EMAF",0,0);  
      MA_2_t=iCustom(NULL, 0, "EMAF",0,1);
      MA_3_t=iCustom(NULL, 0, "EMAF",0,2);
      {
      ExtMapBuffer1[i]=(MA_1_t + MA_2_t + MA_3_t)/3;
      }
   }
   return(0);
  }
//+------------------------------------------------------------------+
 
Forexman77:

Всем привет!

Попробовал сделать индикатор, с трехдневным усреднением на основе своего пользовательского индикатора.

Рисует ровную линию. В чем может быть проблема?

...мания ставить скобки???

for(int i=0;i<limit;i++)
   {
      MA_1_t=iCustom(NULL, 0, "EMAF",0,i);
      MA_2_t=iCustom(NULL, 0, "EMAF",0,i+1);
      MA_3_t=iCustom(NULL, 0, "EMAF",0,i+2);
      ExtMapBuffer1[i]=(MA_1_t + MA_2_t + MA_3_t)/3;
   }
 
TarasBY:

...мания ставить скобки???




Спасибо! Совсем забыл про проверку на ноль) Заработало!!!

Со скобками... Есть такое дело бывает лишние ставлю.

Хорошо бы прочитать про правильное расположение, но пока нигде не нашел.

 
borilunad:

Наконец, заглянул в код! В нём учитывается и спред:

Но лучше учиться серьёзно, не на подсказках! Советник и дня не проработает без должной профессиональной опеки.

Трейдинг не игра, а сложная профессия, требующая знаний, кропотливой работы и часто нестандартных решений по причине непредсказуемости рынка. Желаю вам благоразумия!


спасибо

но как я понял тут:

if (zeroprice>Ask)

if (zeroprice<Bid)

проверяется где находится БУ, выше или ниже тек. цены.

Это не советник а скрипт.

Вопрос, можно ли добавить переменную тут: if (OrderModify(OrderTicket(),0,OrderStopLoss(),zeroprice+Spread,0,CLR_NONE))

 

Уважаемые, вопрос следующего характера:

где лучше сделать усреднение пользовательского индикатора в коде советника или вывести отдельно в новый индикатор?

Спрашиваю, потому что в тестере при использовании своих индикаторов значительно снижается скорость тестирования.

 
Чем больше индикаторов вызывается, тем больше тормозов. Когда индикатор не оптимизирован под скорость исполнения - достаточно и одного чтобы тестер сдох )))
 
MaximuS60:

спасибо

но как я понял тут:

if (zeroprice>Ask)

if (zeroprice<Bid)

проверяется где находится БУ, выше или ниже тек. цены.

Это не советник а скрипт.

Вопрос, можно ли добавить переменную тут: if (OrderModify(OrderTicket(),0,OrderStopLoss(),zeroprice+Spread,0,CLR_NONE))

Посмотрите в Документации правило написания торговой функции OrderModify()!

OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),zeroprice+Spread,0,Blue); //установка тейка в б/у для бая, если позиция в минусе

OrderModify(OrderTicket(),OrderOpenPrice(),OrderStopLoss(),zeroprice-Spread,0,Red); //установка тейка в б/у для селла, если позиция в минусе

OrderModify(OrderTicket(),OrderOpenPrice(),zeroprice+Spread,OrderTakeProfit(),0,Blue); //установка стоплосса в б/у для бая, если позиция в плюсе

OrderModify(OrderTicket(),OrderOpenPrice(),zeroprice-Spread,OrderTakeProfit(),0,Red); //установка стоплосса в б/у для селла, если позиция в плюсе

Пробуйте, проверяйте логику! Проверяйте в журнале ошибки! Успехов в учёбе!