MrGreen86
Гуру форума
Пофиксите пожалуйста индикатор, чтобы была возможность, выставлять уровни. Спасибо.
они и сейчас ставятся
Пофиксите пожалуйста индикатор, чтобы была возможность, выставлять уровни. Спасибо.
Можно здесь доделать советник, чтобы ордера закрывались при обратном сигнале
Извините, но у меня что-то никак...) Многие цвета и различные величины уровней перепробовал... Никак...они и сейчас ставятся
Всё, вроде разобрался...Извините, но у меня что-то никак...) Многие цвета и различные величины уровней перепробовал... Никак...
Привет.Это древний индикатор Виктора Николаева(судя по "шапке")кода.Необычный.
Код такой что впечатление это "черновик".
В подвале он рисует хорошо сглаженную линию цены.Это интересно.
Беда в том что ну очень тугодумный.Трудно использовать.Какой уж тут"спид чанел"Хотя скорость тут в другом-это скорость следить за ценой.
Как нибудь можно ввести ограничение баров для подсчета(например 50 шт.)?
Задачка для тех кому интересно (хоть и с чужим алгоритмом)поработать.
Всем удачи и профитов!С наступающим н.г.!
Здравствуйте! Кто нибудь может добавить в индикатор MTF. Заранее благодарен.
Здравствуйте ! Хороший и профитный советник, но не без проблем. В работе оставляет некоторые ордера без StopLoss и TakeProfit, при этом появляется сообщение на экране (Number of times the brokers server reported that invalid SL and/or TP: кол-во предупреждений). В редакторе также выдаёт некоторые предупреждения. Гоняю его у двух брокеров на демо Alpari и TickMill.
Здравствуйте. Есть специалисты, кто может добавить опцию без убытка в советник? Советник торгует по принципу мартингейла, есть без убыток только для первого открытого ордера, если открывается пачка ордеров, то без убыток уже не работает. При открытии второй и последующих позиций, стоп лосс предыдущей позиции автоматически перемещается на уровень стопа вновь открытой позиции.
Добавьте пожалуйста опцию без убытка для открытой пачки ордеров, привяжите его к переменной, которая работает для без убытка для одного ордера.
Заранее спасибо.
Коллеги, выведите пожалуйста в настройки цвета линий
//+------------------------------------------------------------------+
//| iSWOL_for_ex V2_3TF.mq4 |
//| Copyright 2017, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+
#define NAME_EXPERT "iSWOL_for_ex V2_3TF"
#define VER " V2"
#define RELIZE "GS_2011_08_04"
#define AUTOR "[email protected]"
#define URL "http://bluedream.ucoz.ru"
extern int TF_Indicator = 0;
extern int TF_Indicator1 = 0;
extern int TF_Indicator2 = 0;
extern bool
SHOW_SIGNAL_LINE = true,
Alert_ON = false;
extern color
Main_Line_M1 = Red,
Signal_Line_M1= Tomato,
Main_Line_M5 = DarkOrange,
Signal_Line_M5= SandyBrown,
Main_Line_M15 = Yellow,
Signal_Line_M15= Khaki,
Main_Line_M30 = LimeGreen,
Signal_Line_M30= PaleGreen,
Main_Line_H1 = SkyBlue,
Signal_Line_H1= PowderBlue,
Main_Line_H4 = Blue,
Signal_Line_H4= CornflowerBlue,
Main_Line_D1 = Violet,
Signal_Line_D1= Pink,
Main_Line_W1 = BlueViolet,
Signal_Line_W1= MediumOrchid,
Main_Line_MN1 = Red,
Signal_Line_MN1= Tomato;
//-----------
string
Name_Window,
ex_Name = NAME_EXPERT;
string Txt_TF_Indicator;
int Style_Main_Line = DRAW_LINE;
int Style_Signal_Line = STYLE_DOT;
//+------------------------------------------------------------------+
#property copyright "Sergey Gulyaev. Maykop."
#property link "[email protected] ICQ 365919666"
#property indicator_separate_window
#property indicator_buffers 6
#property indicator_level1 80
#property indicator_level2 20
#property indicator_levelcolor Gray
#property indicator_minimum 0
#property indicator_maximum 100
extern int St_D=5;
extern int St_K=1;
extern int St_S=1;
int D,K,S,D1,K1,S1,D2,K2,S2,z,z1,z2;
//---- buffers
double Buff_0[],Buff_1[];
double Buff_01[],Buff_11[];
double Buff_02[],Buff_12[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
//--------------------------------------------------------------------
if(TF_Indicator == 0) TF_Indicator = Period();
if(TF_Indicator < Period())
{ TF_Indicator = Period();
//if(Alert_ON)Alert("TF младше текущего не допустим!");
}
if(TF_Indicator1 == 0) TF_Indicator1 = Period();
if(TF_Indicator1 < Period())
{ TF_Indicator1 = Period();
//if(Alert_ON)Alert("TF младше текущего не допустим!");
}
if(TF_Indicator2 == 0) TF_Indicator2 = Period();
if(TF_Indicator2 < Period())
{ TF_Indicator2 = Period();
//if(Alert_ON)Alert("TF младше текущего не допустим!");
}
//--------------------------------------------------------------------
z = MathRound(TF_Indicator/Period());
D = St_D*z;
K = St_K*z;
S = St_S*z;
z1 = MathRound(TF_Indicator1/Period());
D1 = St_D*z1;
K1 = St_K*z1;
S1 = St_S*z1;
z2 = MathRound(TF_Indicator2/Period());
D2 = St_D*z2;
K2 = St_K*z2;
S2 = St_S*z2;
//------------ создаём имя окна --------------------------------------
//---- name for indicator window
Name_Window = ex_Name+"("+txt_TF(TF_Indicator)+")";
IndicatorShortName(Name_Window);
//--------------------------------------------------------------------
//--------------------------------------------------------------------
SetIndexBuffer(0,Buff_0);
SetIndexBuffer(1,Buff_1);
switch(TF_Indicator)
{ case PERIOD_M1:
SetIndexStyle (0,Style_Main_Line, 0,0,Main_Line_M1);
SetIndexLabel (0,"St_M1");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_M1);
SetIndexLabel (1,"");
break;
case PERIOD_M5:
SetIndexStyle (0,Style_Main_Line, 0,0,Main_Line_M5);
SetIndexLabel (0,"St_M5");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_M5);
SetIndexLabel (1,"");
break;
case PERIOD_M15:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_M15);
SetIndexLabel (0,"St_M15");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_M15);
SetIndexLabel (1,"");
break;
case PERIOD_M30:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_M30);
SetIndexLabel (0,"St_M30");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_M30);
SetIndexLabel (1,"");
break;
case PERIOD_H1:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_H1);
SetIndexLabel (0,"St_H1");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_H1);
SetIndexLabel (1,"");
break;
case PERIOD_H4:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_H4);
SetIndexLabel (0,"St_H4");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_H4);
SetIndexLabel (1,"");
break;
case PERIOD_D1:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_D1);
SetIndexLabel (0,"St_D1");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_D1);
SetIndexLabel (1,"");
break;
case PERIOD_W1:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_W1);
SetIndexLabel (0,"St_W1");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_W1);
SetIndexLabel (1,"");
break;
case PERIOD_MN1:
SetIndexStyle (0,Style_Main_Line,0,0,Main_Line_MN1);
SetIndexLabel (0,"St_MN1");
SetIndexStyle (1,0,Style_Signal_Line,0,Signal_Line_MN1);
SetIndexLabel (1,"");
break;
default: break;
}
SetIndexBuffer(2,Buff_01);
SetIndexBuffer(3,Buff_11);
switch(TF_Indicator1)
{ case PERIOD_M1:
SetIndexStyle (2,Style_Main_Line, 0,0,Main_Line_M1);
SetIndexLabel (2,"St_M1");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_M1);
SetIndexLabel (3,"");
break;
case PERIOD_M5:
SetIndexStyle (2,Style_Main_Line, 0,0,Main_Line_M5);
SetIndexLabel (2,"St_M5");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_M5);
SetIndexLabel (3,"");
break;
case PERIOD_M15:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_M15);
SetIndexLabel (2,"St_M15");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_M15);
SetIndexLabel (3,"");
break;
case PERIOD_M30:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_M30);
SetIndexLabel (2,"St_M30");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_M30);
SetIndexLabel (3,"");
break;
case PERIOD_H1:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_H1);
SetIndexLabel (2,"St_H1");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_H1);
SetIndexLabel (3,"");
break;
case PERIOD_H4:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_H4);
SetIndexLabel (2,"St_H4");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_H4);
SetIndexLabel (3,"");
break;
case PERIOD_D1:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_D1);
SetIndexLabel (2,"St_D1");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_D1);
SetIndexLabel (3,"");
break;
case PERIOD_W1:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_W1);
SetIndexLabel (2,"St_W1");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_W1);
SetIndexLabel (3,"");
break;
case PERIOD_MN1:
SetIndexStyle (2,Style_Main_Line,0,0,Main_Line_MN1);
SetIndexLabel (2,"St_MN1");
SetIndexStyle (3,0,Style_Signal_Line,0,Signal_Line_MN1);
SetIndexLabel (3,"");
break;
default: break;
}
SetIndexBuffer(4,Buff_02);
SetIndexBuffer(5,Buff_12);
switch(TF_Indicator2)
{ case PERIOD_M1:
SetIndexStyle (4,Style_Main_Line, 0,0,Main_Line_M1);
SetIndexLabel (4,"St_M1");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_M1);
SetIndexLabel (5,"");
break;
case PERIOD_M5:
SetIndexStyle (4,Style_Main_Line, 0,0,Main_Line_M5);
SetIndexLabel (4,"St_M5");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_M5);
SetIndexLabel (5,"");
break;
case PERIOD_M15:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_M15);
SetIndexLabel (4,"St_M15");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_M15);
SetIndexLabel (5,"");
break;
case PERIOD_M30:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_M30);
SetIndexLabel (4,"St_M30");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_M30);
SetIndexLabel (5,"");
break;
case PERIOD_H1:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_H1);
SetIndexLabel (4,"St_H1");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_H1);
SetIndexLabel (5,"");
break;
case PERIOD_H4:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_H4);
SetIndexLabel (4,"St_H4");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_H4);
SetIndexLabel (5,"");
break;
case PERIOD_D1:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_D1);
SetIndexLabel (4,"St_D1");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_D1);
SetIndexLabel (5,"");
break;
case PERIOD_W1:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_W1);
SetIndexLabel (4,"St_W1");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_W1);
SetIndexLabel (5,"");
break;
case PERIOD_MN1:
SetIndexStyle (4,Style_Main_Line,0,0,Main_Line_MN1);
SetIndexLabel (4,"St_MN1");
SetIndexStyle (5,0,Style_Signal_Line,0,Signal_Line_MN1);
SetIndexLabel (5,"");
break;
default: break;
}
if(!SHOW_SIGNAL_LINE)SetIndexStyle (1,DRAW_NONE);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{ int
i, // Индекс бара
Counted_bars; // Количество просчитанных баров
//--------------------------------------------------------------------
//--------------------------------------------------------------------
Counted_bars= IndicatorCounted(); // Количество просчитанных баров
i=Bars-Counted_bars-1; // Индекс первого непосчитанного
while(i>=0) // Цикл по непосчитанным барам
{ Buff_0[i] = iStochastic(NULL,Period(),D,K,S,MODE_SMA,0,MODE_MAIN,i);
Buff_1[i] = iStochastic(NULL,Period(),D,K,S,MODE_SMA,0,MODE_SIGNAL,i);
Buff_01[i] = iStochastic(NULL,Period(),D1,K1,S1,MODE_SMA,0,MODE_MAIN,i);
Buff_11[i] = iStochastic(NULL,Period(),D1,K1,S1,MODE_SMA,0,MODE_SIGNAL,i);
Buff_02[i] = iStochastic(NULL,Period(),D2,K2,S2,MODE_SMA,0,MODE_MAIN,i);
Buff_12[i] = iStochastic(NULL,Period(),D2,K2,S2,MODE_SMA,0,MODE_SIGNAL,i);
i--;
}
static bool
FLAG_UP = true,
FLAG_DN = true;
if(Alert_ON) {
if(FLAG_UP && Buff_0[0] > Buff_1[0]) {
Alert("DN->UP :" + txt_TF(TF_Indicator)+" "+Symbol()+" "+ex_Name);
FLAG_UP = false;
FLAG_DN = true;
}
if(FLAG_DN && Buff_0[0] < Buff_1[0]) {
Alert("UP->DN :" + txt_TF(TF_Indicator)+" "+Symbol()+" "+ex_Name);
FLAG_UP = true;
FLAG_DN = false;
}
}
//----
return(0);
}
//+------------------------------------------------------------------+
//+------------------------------------------------------------------+
//| [email protected] 14.06.2011
//+------------------------------------------------------------------+
//| txt_TF() переводит ТФ в текстовый формат
//+------------------------------------------------------------------+
string txt_TF( int _TF)
{ string _Function = "txt_TF():";
string _Txt_TF;
switch(_TF)
{
case PERIOD_M1: _Txt_TF = "M1"; break;
case PERIOD_M5: _Txt_TF = "M5"; break;
case PERIOD_M15: _Txt_TF = "M15"; break;
case PERIOD_M30: _Txt_TF = "M30"; break;
case PERIOD_H1: _Txt_TF = "H1"; break;
case PERIOD_H4: _Txt_TF = "H4"; break;
case PERIOD_D1: _Txt_TF = "D1"; break;
case PERIOD_W1: _Txt_TF = "W1"; break;
case PERIOD_MN1: _Txt_TF = "MN1"; break;
default: Alert("Неверно установлен ТФ " + _TF); break;
}
return(_Txt_TF);
}
//+------------------------------------------------------------------+
//+-------
общий без убыток для пачки открытых ордеров.
Вот спасибо, подойдет конечно, молодца... а то я уж подумал неподсильная задача....Привет, вывел, попробуйка. Может подойдет.
Вот спасибо, подойдет конечно, молодца... а то я уж подумал неподсильная задача....