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

 

Народ! Помогите плз с кодом!!! Это мой первый советник!!! 3 ЧасА бьюсь над одной ошибкой !!!!!!!!!!! Ошибка: end of program unbalanced left parenthesis!!!!

//+------------------------------------------------------------------+
//| Nevalyashka_BOT.mq4 |
//| Copyright 2013, MetaQuotes Software Corp. |
//| https://www.metaquotes.net/ |
//+------------------------------------------------------------------+
#property copyright "Copyright 2013, MetaQuotes Software Corp."
#property link "https://www.metaquotes.net/"
#property indicator_buffers 2
#property indicator_color1 Green
#property indicator_color2 Red
#property indicator_width1 2
#property indicator_width2 2


extern int Bars_To_Count = 400;
extern int Arrow_dis_from_can = 2;//points
extern bool play_sound = true;
extern string sound_name = "Red Alert";
extern double lots =0.1;
extern int SlipPage =30;
extern int StopLoss =250;
extern int TrailingStop =220;
extern int TrailingStep =1;
extern string comment ="Побеждает НеВаЛяШкА";
extern int Magic =777;


double buf_up[];
double buf_down[];
double up;
double down;
int bars_cheked;
int ticket;
int Sl;
int i;

//+------------------------------------------------------------------+
//| expert initialization function |
//+------------------------------------------------------------------+
void init()
{
SetIndexBuffer(0,buf_up);
SetIndexArrow(0,233);
SetIndexStyle(0,DRAW_ARROW);

SetIndexArrow(1,234);
SetIndexBuffer(1,buf_down);
SetIndexStyle(1,DRAW_ARROW);


if (Digits ==3 || Digits ==5)
{
StopLoss*=10;
SlipPage*=10;
TrailingStop *=10;
TrailingStep *=10;
}
}

//+------------------------------------------------------------------+
//| expert deinitialization function |
//+------------------------------------------------------------------+
void deinit()
{


}
//+------------------------------------------------------------------+
//| expert start function |
//+------------------------------------------------------------------+
void start()
{
for(int h=1;h<Bars_To_Count-bars_cheked;h++)
{
/////////up
if(Open[h]<Close[h])
{
for(int u=h+1;u<Bars_To_Count+1;u++)
{
if(Open[u]!=Close[u])
break;
}

if(Open[u]>Close[u])
{
Sl=NormalizeDouble(Ask-StopLoss*Point,Digits);
ticket=OrderSend(Symbol(),OP_BUY,lots,Ask,SlipPage,comment,Magic,0,indicator_color1);
if (ticket>0)
{
if (OrderSelect(ticket,SELECT_BY_TICKET, MODE_TRADES) ==true)
{
OrderModify(ticket,OrderOpenPrice(),Sl,0,0);
}
buf_up[h]=Low[h]-Arrow_dis_from_can*Point;

}
}
}

//+------------------------------------------------------------------+
void Trailing;

{

for(int i=0; i < OrdersTotal(); i++)
{
(if(OrderSelect(i,SELECT_BY_POS, MODE_TRADES))
{
if (OrderSymbol() == Symbol() && OrderMagicNumber() == Magic)
{
if (OrderType() == OP_BUY)
{
if (Bid-OrderOpenPrice() > TrailingStop*Point)
{
if (OrderStopLoss() < Bid - (TrailingStop + TrailingStep)*Point)
{
Sl=NormalizeDouble(Bid-TrailingStop*Point,Digits);
if (OrderStopLoss() !=Sl)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Sl,0,0);
}
}
}
}

}
if (OrderType() == OP_SELL)
{
if (OrderOpenPrice()-Ask > TrailingStop*Point)
{
if (OrderStopLoss() > Ask + (TrailingStop + TrailingStep)*Point)
{
Sl=NormalizeDouble(Ask+TrailingStop*Point,Digits);
if (OrderStopLoss() !=Sl)
{
OrderModify(OrderTicket(),OrderOpenPrice(),Sl,0,0);


}
}
}

}
}
}

}
}
//+------------------------------------------------------------------+

////////down
if(Open[h]>Close[h])
{
for(int e=h+1; e < Bars_To_Count+1; e++)
{
if(Open[e]!=Close[e])
break;
{


if(Open[e]<Close[e])
{
Sl=NormalizeDouble(Bid+StopLoss*Point,Digits)
ticket=OrderSend(Symbol(),OP_SELL,lots,Bid,SlipPage,comment,Magic,0,indicator_color2);
if (ticket>0)
{
OrderModify(ticket,OrderOpenPrice(),Sl,0,0);
buf_down[h]=High[h]+Arrow_dis_from_can*Point;
}
}
}//end
}
}
}

 
Hammerochek:

Народ! Помогите плз с кодом!!! Это мой первый советник!!! 3 ЧасА бьюсь над одной ошибкой !!!!!!!!!!! Ошибка: end of program unbalanced left parenthesis!!!!


Не хватает одной парной скобки. Ищите пару к {
 
solnce600:

Проблему с разным количеством баров в окнах одного инструмента я решил сам.

Просто к переменной Bars прибавляю нужное количество баров и график сдвигается.

Но если тестер СИЛЬНО не врет ГРААЛЬ похоже на то,что все таки СУЩЕСТВУЕТ.

Одно сложное условие,состоящее из 4 простых условий и открытие ордера с фиксированным стопом и профитом.

И это сложное условие с небольшими вариациями многократно повторяется.

Самый большой риск - это очень редко получить не более 1 стопа подряд. (от 250 до 300 пп.),

.http://clip2net.com/s/6if1Gm (с 2000 по 2014)

http://clip2net.com/s/6if2PS

Количество сделок можно довести в среднем до 2-3 каждую неделю(и все без стопов)

А возможно и по 1 сделке в день и то же без стопов.

Всё понятно! Если стопы не ставишь, значит просадку допускаешь большую. А какую большую, в тестере не увидишь между закрытиями, а на дёмке увидишь и ужаснёшься! Не хочу "каркать", но знаю по собственному же опыту эти "граали"!
 
borilunad:
Всё понятно! Если стопы не ставишь, значит просадку допускаешь большую. А какую большую, в тестере не увидишь между закрытиями, а на дёмке увидишь и ужаснёшься! Не хочу "каркать", но знаю по собственному же опыту эти "граали"!

Борис, он уже делился своим отчётом. Там, если мне память не изменяет, 98% просадки. Фигня, что ДЦ при 60% (где как, но всё же...) уже по СтопАуту кроют всё.

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

 
borilunad:
Всё понятно! Если стопы не ставишь, значит просадку допускаешь большую. А какую большую, в тестере не увидишь между закрытиями, а на дёмке увидишь и ужаснёшься! Не хочу "каркать", но знаю по собственному же опыту эти "граали"!
В том то и дело что стопы ставлю от 250 до 400.Но до них не доходит цена.Оооооочень редко может дойти - не более 1 стопа подряд.Т.е. его можно без риска отыграть увеличенным объемом,потому,что после него обязательно будет профит.
 
artmedia70:
Борис, он уже делился своим отчётом. Там, если мне память не изменяет, 98% просадки. Фигня, что ДЦ при 60% (где как, но всё же...) уже по СтопАуту кроют всё.

Просто я там неправильно указал начальный депозит.
 
solnce600:
Просто я там неправильно указал начальный депозит.

Точно! Пиво должно быть правильным... Вот водка - правильное пиво...
 
artmedia70:

Борис, он уже делился своим отчётом. Там, если мне память не изменяет, 98% просадки. Фигня, что ДЦ при 60% (где как, но всё же...) уже по СтопАуту кроют всё.

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


При тупом пересиживании из 600-700 сделок - одна обяхательно закроется по стопу.А меня не закрывается.
 
artmedia70:

Борис, он уже делился своим отчётом. Там, если мне память не изменяет, 98% просадки. Фигня, что ДЦ при 60% (где как, но всё же...) уже по СтопАуту кроют всё.

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

Ясно дело! Чтобы не обольщаться, я задолго до СтопАута прописываю до открытия позиции или доливки Алерт, что нет достаточно "маний". По крайней мере, знаю, что выходит "лажа", и ищу другие решения.
 
artmedia70:
Точно! Пиво должно быть правильным... Вот водка - правильное пиво...

А если я покажу на тестере с 2000 по 2014 1500 - 2000 сделок без стопа - тогда поверите.

Но ордера будут с профитом 30 пп.и со стопом 250 - 400.

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