[ВНИМАНИЕ, ТЕМА ЗАКРЫТА!] Любой вопрос новичка, чтоб не захламлять форум. Профи, не проходите мимо. Без вас никуда. - страница 40

 

Теоретические вопросы:

1. Как написать функцию (где об этом почитать)?

2. С каким расширением ее скомпилировать и сохранять?

3. В какую папку ее сохранить?

4. Потребуется ли писать отдельный скрипт для ее запуска (или из эксперта сама запустится)?

Большое спасибо не прошедшим мимо моего вопроса!))

 

Здравствуйте. индикатор не рисует новые значения. только когда заного выношу на графиу, обновляет значения.

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 White
#property indicator_color2 White

//---- input parameters

extern int CountBars=3500;

//---- buffers
double val1[];
double val2[];

//+------------------------------------------------------------------+
//| Custom indicator initialization function                         |
//+------------------------------------------------------------------+
int init()
  {
   string short_name;
//---- indicator line
   IndicatorBuffers(2);
   SetIndexStyle(0,DRAW_ARROW);
   SetIndexArrow(0,217);
   SetIndexBuffer(0,val1);
   SetIndexEmptyValue(0,0.0);
   SetIndexStyle(1,DRAW_ARROW);
   SetIndexArrow(1,218);
   SetIndexBuffer(1,val2);
   SetIndexEmptyValue(1,0.0);
//----
   return(0);
  }
//+------------------------------------------------------------------+
//| AltrTrend_Signal_v2_2                                            |
//+------------------------------------------------------------------+
int start()
  { double F_u_EUR,F_u_GBP,F_d_EUR,F_d_GBP,F_u_USD,F_d_USD;
   int limit;
   int counted_bars=IndicatorCounted();
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
   for(int i=3; i<limit; i++)
{ 

	F_u_EUR=iFractals("EURJPY",15,MODE_UPPER,i);
	F_d_EUR=iFractals("EURJPY",15,MODE_LOWER,i);
	F_u_GBP=iFractals("GBPJPY",15,MODE_UPPER,i);
	F_d_GBP=iFractals("GBPJPY",15,MODE_LOWER,i);
	F_u_USD=iFractals("USDJPY",15,MODE_UPPER,i);
	F_d_USD=iFractals("USDJPY",15,MODE_LOWER,i);

if (F_u_EUR>F_d_EUR&&F_u_GBP>F_d_GBP&&F_u_USD>F_d_USD)
{
	val1[i]=High[i]+35*Point;
}
if (F_u_EUR<F_d_EUR&&F_u_GBP<F_d_GBP&&F_u_USD<F_d_USD) 
{
	val2[i]=Low[i]-35*Point;
}


}
   return(0);
  }

Если можно исправьте код!

Спасибо

 
Kostay писал(а) >>

Здравствуйте. индикатор не рисует новые значения. только когда заного выношу на графиу, обновляет значения.

Если можно исправьте код!

Спасибо

int start()
  { double F_u_EUR,F_u_GBP,F_d_EUR,F_d_GBP,F_u_USD,F_d_USD;
   int limit;
   int counted_bars=IndicatorCounted();
//---- last counted bar will be recounted
   if(counted_bars>0) counted_bars--;
   limit=Bars-counted_bars;
   if (limit<3) limit+=3;
   for(int i=3; i<limit; i++)
{ 

F_u_EUR=iFractals("EURJPY",15,MODE_UPPER,i);
F_d_EUR=iFractals("EURJPY",15,MODE_LOWER,i);
F_u_GBP=iFractals("GBPJPY",15,MODE_UPPER,i);
F_d_GBP=iFractals("GBPJPY",15,MODE_LOWER,i);
F_u_USD=iFractals("USDJPY",15,MODE_UPPER,i);
F_d_USD=iFractals("USDJPY",15,MODE_LOWER,i);

if (F_u_EUR>F_d_EUR&&F_u_GBP>F_d_GBP&&F_u_USD>F_d_USD)
{
val1[i]=High[i]+35*Point;
}
if (F_u_EUR<F_d_EUR&&F_u_GBP<F_d_GBP&&F_u_USD<F_d_USD) 
{
val2[i]=Low[i]-35*Point;
}


}
   return(0);
  }
 

Vinin спасибо за помощь. Исправил индикатор внес его в визуализацию но он по прежнему не рисует новые значения!!!

Ни чего не пойму.

 
Kostay писал(а) >>

Vinin спасибо за помощь. Исправил индикатор внес его в визуализацию но он по прежнему не рисует новые значения!!!

Ни чего не пойму.

Видимо кол-во обновленных баров всегда меньше трех и условие цикла никогда не иполняется

for(int i=3; i<limit; i++)
потому что новые бары по одному поступают. Может что-то типа

for(int i=3; i<limit+3; i++)

 
Kostay писал(а) >>

Vinin спасибо за помощь. Исправил индикатор внес его в визуализацию но он по прежнему не рисует новые значения!!!

Ни чего не пойму.

Так мультивалютник и не должен работать на визуализации. Данные с других таймфреймов он берет с текущего графика. Синхронизацию по времени надо делать для такой работы.

 
Vinin >>:

Так мультивалютник и не должен работать на визуализации. Данные с других таймфреймов он берет с текущего графика. Синхронизацию по времени надо делать для такой работы.

Теперь понятно. большое спасибо!!!!!!!!!!!!

 

Привет!

Возможно ли изменить с помощу советника настройки МТ4, например размер лота?

Если да, подскажите!

 
vikon >>:

Привет!

Возможно ли изменить с помощу советника настройки МТ4, например размер лота?

Если да, подскажите!

Размер лота не относится к настройкам MT4. :) Он указывается в качестве параметра функции OrderSend при отправке запроса на открытие ордера.

 
Everlost >>:

Размер лота не относится к настройкам MT4. :) Он указывается в качестве параметра функции OrderSend при отправке запроса на открытие ордера.

Я вкурсах насчет открытия ордера с помощу кода.

Мне другое нужно, созать полуавтоматическую систему со свойствами менеджмента.

Открываю вручную позицию  но размер лота отслеживает советник и изменяет его по умолчанию в МТ (сервис\настройки\торговля\объем по умолчанию)

Это возможно зделать?

Причина обращения: