Помогите дописать експерта !!!

 

Вот скрипт моего индикатора

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue
//---- input parameters
extern int CountBars = 300;
extern int SSP = 7;
extern double Kmin = 1.6;
extern double Kmax = 50.6; //24 21.6 21.6
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
SetIndexStyle(0, DRAW_LINE, 0, 2);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexStyle(1, DRAW_LINE, 0, 2);
SetIndexBuffer(1, ExtMapBuffer2);
//----
if(CountBars >= Bars)
CountBars = Bars;
SetIndexDrawBegin(0, Bars - CountBars + SSP);
SetIndexDrawBegin(1, Bars - CountBars + SSP);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int i, i2,loopbegin,counted_bars=IndicatorCounted();
double SsMax, SsMin, K, val1, val2, smin, smax, price;
//----
if(Bars <= SSP + 1)
return(0);
//----
if(counted_bars < SSP + 1)
{
for(i = 1; i <= SSP; i++)
ExtMapBuffer1[CountBars-i] = 0. 0;
for(i = 1; i <= SSP; i++)
ExtMapBuffer2[CountBars-i] = 0. 0;
}
for(i = CountBars - SSP; i >= 0; i--)
{
SsMax = High[Highest(NULL, 0, MODE_HIGH, SSP, i - SSP + 1)];
SsMin = Low[Lowest(NULL, 0, MODE_LOW, SSP, i - SSP + 1)];
smin = SsMin - (SsMax - SsMin)*Kmin / 100;
smax = SsMax - (SsMax - SsMin)*Kmax / 100;
ExtMapBuffer1[i-SSP+6] = smax;
ExtMapBuffer2[i-SSP-1] = smax;
val1 = ExtMapBuffer1[0];
val2 = ExtMapBuffer2[0];
//----
if(val1 > val2)
Comment("buy ", val1);
//----
if(val1 < val2)
Comment("sell ", val2);
}
//----
return(0);
}
//+------------------------------------------------------------------+

а ето скрипт моего експерта

//+------------------------------------------------------------------+
// | expert start function |
//+------------------------------------------------------------------+
int ticket;
if(val1+1 > val2)
{
ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Ask-25*Point,Ask+25*Point, "My order #2",0,0,Green);
if(val1 < val2+1)
{
OrderClose(OP_BUY,1,Ask,3, Red);
return(0);
}
}
if(val1 < val2+1)
{
ticket=OrderSend(Symbol(),OP_SELL,1,Ask,3,Ask-25*Point, Ask+25*Point, "My order #2",0,0,Green);
if(val1+1 > val2)
{
OrderClose(OP_SELL,1,Ask, 3,Red);
return(0);
}
}
}
//+------------------------------------------------------------------+

при проверки, не было найдено ошибок ,но дела в том что он у меня не вклучается!!!

Кто может мне помочь, стартануть експерта и подкоректировать мой скрипт?

Мне надо просто команды

зорание спасибо

 

Это полный код эксперта или выжимка того что типа не работатет? Ошибок масса. Выложите полный код эксперта

 
Figar0:

Это полный код эксперта или выжимка того что типа не работатет? Ошибок масса. Выложите полный код эксперта

//+------------------------------------------------------------------+
//| concept. mq4 |
//| concept rewritten by MeDvED |
//| |
//+------------------------------------------------------------------+
#property copyright "concept rewritten by MeDvED"

#property indicator_chart_window
#property indicator_buffers 2
#property indicator_color1 Red
#property indicator_color2 Blue
//---- input parameters
extern int CountBars = 300;
extern int SSP = 7;
extern double Kmin = 1.6;
extern double Kmax = 50.6; //24 21.6 21.6
//---- buffers
double ExtMapBuffer1[];
double ExtMapBuffer2[];
//+------------------------------------------------------------------+
//| Custom indicator initialization function |
//+------------------------------------------------------------------+
int init()
{
SetIndexStyle(0, DRAW_LINE, 0, 2);
SetIndexBuffer(0, ExtMapBuffer1);
SetIndexStyle(1, DRAW_LINE, 0, 2);
SetIndexBuffer(1, ExtMapBuffer2);
//----
if(CountBars >= Bars)
CountBars = Bars;
SetIndexDrawBegin(0, Bars - CountBars + SSP);
SetIndexDrawBegin(1, Bars - CountBars + SSP);
//----
return(0);
}
//+------------------------------------------------------------------+
//| Custor indicator deinitialization function |
//+------------------------------------------------------------------+
int deinit()
{
return(0);
}
//+------------------------------------------------------------------+
//| Custom indicator iteration function |
//+------------------------------------------------------------------+
int start()
{
int i, i2,loopbegin,counted_bars=IndicatorCounted();
double SsMax, SsMin, K, val1, val2, smin, smax, price;
//----
if(Bars <= SSP + 1)
return(0);
//----
if(counted_bars < SSP + 1)
{
for(i = 1; i <= SSP; i++)
ExtMapBuffer1[CountBars-i] = 0. 0;
for(i = 1; i <= SSP; i++)
ExtMapBuffer2[CountBars-i] = 0. 0;
}
for(i = CountBars - SSP; i >= 0; i--)
{
SsMax = High[Highest(NULL, 0, MODE_HIGH, SSP, i - SSP + 1)];
SsMin = Low[Lowest(NULL, 0, MODE_LOW, SSP, i - SSP + 1)];
smin = SsMin - (SsMax - SsMin)*Kmin / 100;
smax = SsMax - (SsMax - SsMin)*Kmax / 100;
ExtMapBuffer1[i-SSP+6] = smax;
ExtMapBuffer2[i-SSP-1] = smax;
val1 = ExtMapBuffer1[0];
val2 = ExtMapBuffer2[0];
//----
if(val1 > val2)
Comment(" buy ", val1);
//----
if(val1 < val2)
Comment(" sell ", val2);
}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
int ticket;
if(val1+1 > val2)
{
ticket=OrderSend(Symbol(),OP_BUY,1,Ask,3,Ask-25*Point,Ask+25*Point, "My order #2",0,0,Green);
if(val1 < val2+1)
{
OrderClose(OP_BUY,1,Ask,3, Red);
return(0);
}
}
if(val1 < val2+1)
{
ticket=OrderSend(Symbol(),OP_SELL,1,Ask,3,Ask-25*Point, Ask+25*Point, "My order #2",0,0,Green);
if(val1+1 > val2)
{
OrderClose(OP_SELL,1,Ask, 3,Red);
return(0);
}
}
}
//+------------------------------------------------------------------+

Вот так вигледит мой експерт.
Я только начел, но понемаю что тут чигота не хватает. Слишком коротко если сравнить с другими експертами.
А разшифровать все команды не получается.

Посоветуйте мне, как быть.

Зорание спасибо.

 

https://book.mql4.com/ru

Это все чем в данной ситуации можно помочь. Даже простое перечисление ошибок займет много времени, и на данном этапе вряд ли Вам поможет.

Начните с того, что взяв рабочий эксперт из https://www.mql5.com/ru/code разберитесь в нем, измените его под свои нужды.

Если нет желания осваивать MQL, но очень хочется свой эксперт - тут достаточно программистов пишущих на заказ for $.

 
Figar0 >>:

https://book.mql4.com/ru

Это все чем в данной ситуации можно помочь. Даже простое перечисление ошибок займет много времени, и на данном этапе вряд ли Вам поможет.

Начните с того, что взяв рабочий эксперт из https://www.mql5.com/ru/code разберитесь в нем, измените его под свои нужды.

Если нет желания осваивать MQL, но очень хочется свой эксперт - тут достаточно программистов пишущих на заказ for $.

Прошу извинения, но не могли-бы вы написать код, по примерно следующей задаче- первый лот наприм. 0.1, а каждый следующий увеличивается на определенную, заданную величину.

Заранее СПАСИБО

 
rusmos >>:

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

По моим подсчетам это уже шестой Ваш пост на эту тему, в какую тему ни зайдешь, на Вас натыкаешься.

Добьетесь обратного результата.