Советник Бриллиант Элис

  • Автор темы Автор темы Nart60
  • Дата начала Дата начала

Nart60

Активный участник
Всем привет!
Написал код советника по рекомендациям с сайта (фактически переписал) по ишимоку. Но советник не работает. При компеляции выдает сообщения unexpeted end of programm и второе замечание unbalansed parentheses
Вот код советника. Прошу кто умеет исправлять и работать по программированию устранить эти незначительные как я понимаю, ошибки кода советника. У меня не получается. Спасибо!

//+------------------------------------------------------------------+
//| Бриллиант Элис.mq4 |
//| Copyright 2016, MetaQuotes Software Corp. Абаз |
//| _https://www.mql5.com|
//+------------------------------------------------------------------+
#property copyright "Copyright 2016, MetaQuotes Software Corp. Абаз"
#property link "_https://www.mql5.com"
#property version "1.00"
#property strict
extern int Tenkan=9;
extern int Kijun=26;
extern int SenkouB=52;
extern int Magic=777;
extern double Lot=0.1;
extern int SL=50;
extern int TP=150;

//+------------------------------------------------------------------+
//| Expert start function |
//+------------------------------------------------------------------+
int start()
{
kolpos=0;
double TK=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_TENKANSEN,0);
double KJ=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_KIJUNSEN,0);
double SSA=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANA,0);
double SSB=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANB,0);
double CH=iIchimoku(Symbol(),0,Tenkan,Kijun,SenkouB,MODE_CHIKOUSPAN,0);
//---
for(int pos=0; pos<OrdersTotal(); pos++)
{
OrderSelect;(pos,SELECT_BY_POS,MODE_TRADES);
if (OrderSymbol()= =Sumbol()&&OrderMagicNumber()==Magic)
kolpos++;
}
if(kolpos==0)
{
if(SSA>SSB&&Close(1)>SSA&&Open(1)<SSA&&Volume(0)<3
OrderSend(Sumbol(),OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,Null,Magic,0,Green);
if SSB>SSA&&Close(1)>SSB&&Open(1)SSB&&Volume(0)<3)
OrderSend(Sumdol(),OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,Null,Magic,0,Green);
if(SSA<SSB&&Close(1)<SSA&&Open(1)>SSA&&Volume(0)<3
OrderSend(Sumdol(),OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,Null,Magic,0,Red);
if(SSB<SSA&&Close(1)<SSB&&Open(1)>SSB&&Volume(0)<3
OrderSend(Sumdol(),OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,Null,Magic,0,Red);

}
{
return(0);

}
 
Последнее редактирование модератором:
  • Like
Реакции: osa

Nart60

Активный участник
Выделенная скоба вроде лишняя.
"Вроде" - ибо в компайлере не проверял
Скобку и удалял и добавлял, все равно дает замечания, указанные выше.
Может кто в компайлере проверит и разберется что за фигня на ровном месте.
 
Последнее редактирование:

ддеенниисс

Активный участник
Ошибок полным полно.
Тут нужно не исправлять ,а переписывать.
Выведены не существующие функции,там где фигурные скобки нужны квадратные,многих скобок вообще нет и есть конец строк где их не должно быть.
Найди сам отличия.
НЕ ЗНАЮ КАК БУДЕТ ТОРГОВАТЬ И БУДЕТ ЛИ ВООБЩЕ,НО ОШИБКИ ВСЕ УБРАЛ.

//+------------------------------------------------------------------+
//| F1.mq4 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+

#property copyright "Copyright 2016, MetaQuotes Software Corp. Абаз"
#property link "_https://www.mql5.com"
#property version "1.00"
#property strict
extern int Tenkan=9;
extern int Kijun=26;
extern int SenkouB=52;
extern int Magic=777;
extern double Lot=0.1;
extern int SL=50;
extern int TP=150;
int f12;
string Sumbol;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
Sumbol=Symbol();
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
int start()
{


int kolpos=0;
double TK=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_TENKANSEN,0);
double KJ=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_KIJUNSEN,0);
double SSA=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANA,0);
double SSB=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANB,0);
double CH=iIchimoku(Symbol(),0,Tenkan,Kijun,SenkouB,MODE_CHIKOUSPAN,0);
//---
for(int pos=0; pos<OrdersTotal(); pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Sumbol||OrderMagicNumber()!=Magic)continue;
if (OrderSymbol()==Sumbol&&OrderMagicNumber()==Magic)
{
kolpos++;
}
}
}
//---
if(kolpos==0)
{
//---
if(SSA>SSB&&Close[1]>SSA&&Open[1]<SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//---
if(SSB>SSA&&Close[1]>SSB&&Open[1]<SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//--
if(SSA<SSB&&Close[1]<SSA&&Open[1]>SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---
if(SSB<SSA&&Close[1]<SSB&&Open[1]>SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---

}
return(0);
}
 

alzhan74

Новичок форума
Ошибок полным полно.
Тут нужно не исправлять ,а переписывать.
Выведены не существующие функции,там где фигурные скобки нужны квадратные,многих скобок вообще нет и есть конец строк где их не должно быть.
Найди сам отличия.
НЕ ЗНАЮ КАК БУДЕТ ТОРГОВАТЬ И БУДЕТ ЛИ ВООБЩЕ,НО ОШИБКИ ВСЕ УБРАЛ.

//+------------------------------------------------------------------+
//| F1.mq4 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+

#property copyright "Copyright 2016, MetaQuotes Software Corp. Абаз"
#property link "_https://www.mql5.com"
#property version "1.00"
#property strict
extern int Tenkan=9;
extern int Kijun=26;
extern int SenkouB=52;
extern int Magic=777;
extern double Lot=0.1;
extern int SL=50;
extern int TP=150;
int f12;
string Sumbol;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
Sumbol=Symbol();
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
int start()
{


int kolpos=0;
double TK=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_TENKANSEN,0);
double KJ=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_KIJUNSEN,0);
double SSA=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANA,0);
double SSB=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANB,0);
double CH=iIchimoku(Symbol(),0,Tenkan,Kijun,SenkouB,MODE_CHIKOUSPAN,0);
//---
for(int pos=0; pos<OrdersTotal(); pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Sumbol||OrderMagicNumber()!=Magic)continue;
if (OrderSymbol()==Sumbol&&OrderMagicNumber()==Magic)
{
kolpos++;
}
}
}
//---
if(kolpos==0)
{
//---
if(SSA>SSB&&Close[1]>SSA&&Open[1]<SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//---
if(SSB>SSA&&Close[1]>SSB&&Open[1]<SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//--
if(SSA<SSB&&Close[1]<SSA&&Open[1]>SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---
if(SSB<SSA&&Close[1]<SSB&&Open[1]>SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---

}
return(0);
}

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

ддеенниисс

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

Всё отлично-где то ваш косяк.
Сотрите абсолютно всю информацию которая была до этого все буквы-цифры и вставьте только этот код.
 

Вложения

  • Безымянный22.gif
    Безымянный22.gif
    82,8 КБ · Просмотры: 103
Последнее редактирование:

alzhan74

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

Всё отлично-где то ваш косяк.
Сотрите абсолютно всю информацию которая была до этого все буквы-цифры и вставьте только этот код.[/QUOTE
Скиньте ваш файл mql4 сюда
 

Nart60

Активный участник
Ошибок полным полно.
Тут нужно не исправлять ,а переписывать.
Выведены не существующие функции,там где фигурные скобки нужны квадратные,многих скобок вообще нет и есть конец строк где их не должно быть.
Найди сам отличия.
НЕ ЗНАЮ КАК БУДЕТ ТОРГОВАТЬ И БУДЕТ ЛИ ВООБЩЕ,НО ОШИБКИ ВСЕ УБРАЛ.

//+------------------------------------------------------------------+
//| F1.mq4 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+

#property copyright "Copyright 2016, MetaQuotes Software Corp. Абаз"
#property link "_https://www.mql5.com"
#property version "1.00"
#property strict
extern int Tenkan=9;
extern int Kijun=26;
extern int SenkouB=52;
extern int Magic=777;
extern double Lot=0.1;
extern int SL=50;
extern int TP=150;
int f12;
string Sumbol;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
Sumbol=Symbol();
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
int start()
{


int kolpos=0;
double TK=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_TENKANSEN,0);
double KJ=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_KIJUNSEN,0);
double SSA=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANA,0);
double SSB=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANB,0);
double CH=iIchimoku(Symbol(),0,Tenkan,Kijun,SenkouB,MODE_CHIKOUSPAN,0);
//---
for(int pos=0; pos<OrdersTotal(); pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Sumbol||OrderMagicNumber()!=Magic)continue;
if (OrderSymbol()==Sumbol&&OrderMagicNumber()==Magic)
{
kolpos++;
}
}
}
//---
if(kolpos==0)
{
//---
if(SSA>SSB&&Close[1]>SSA&&Open[1]<SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//---
if(SSB>SSA&&Close[1]>SSB&&Open[1]<SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//--
if(SSA<SSB&&Close[1]<SSA&&Open[1]>SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---
if(SSB<SSA&&Close[1]<SSB&&Open[1]>SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---

}
return(0);
}
Спасибо! Это мое первое творение (точнее копирование), но перспективное, так как нарисовано на основе ишимоку. Может кто докинет Rubicon indikator, ну кто умеет имеется ввиду, а там посмотрим, может присобачить уровни С и П и сетку фибоначи.
 

Yury48

Почетный гражданин
Ошибок полным полно.
Тут нужно не исправлять ,а переписывать.
Выведены не существующие функции,там где фигурные скобки нужны квадратные,многих скобок вообще нет и есть конец строк где их не должно быть.
Найди сам отличия.
НЕ ЗНАЮ КАК БУДЕТ ТОРГОВАТЬ И БУДЕТ ЛИ ВООБЩЕ,НО ОШИБКИ ВСЕ УБРАЛ.

//+------------------------------------------------------------------+
//| F1.mq4 |
//| Copyright 2016, MetaQuotes Software Corp. |
//| https://www.mql5.com |
//+------------------------------------------------------------------+

#property copyright "Copyright 2016, MetaQuotes Software Corp. Абаз"
#property link "_https://www.mql5.com"
#property version "1.00"
#property strict
extern int Tenkan=9;
extern int Kijun=26;
extern int SenkouB=52;
extern int Magic=777;
extern double Lot=0.1;
extern int SL=50;
extern int TP=150;
int f12;
string Sumbol;
//+------------------------------------------------------------------+
//| Expert initialization function |
//+------------------------------------------------------------------+
int OnInit()
{
//---
Sumbol=Symbol();
//---
return(INIT_SUCCEEDED);
}
//+------------------------------------------------------------------+
//| Expert deinitialization function |
//+------------------------------------------------------------------+

//+------------------------------------------------------------------+
//| Expert tick function |
//+------------------------------------------------------------------+
int start()
{


int kolpos=0;
double TK=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_TENKANSEN,0);
double KJ=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_KIJUNSEN,0);
double SSA=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANA,0);
double SSB=iIchimoku(Symbol(),0, Tenkan, Kijun, SenkouB, MODE_SENKOUSPANB,0);
double CH=iIchimoku(Symbol(),0,Tenkan,Kijun,SenkouB,MODE_CHIKOUSPAN,0);
//---
for(int pos=0; pos<OrdersTotal(); pos++)
{
if(OrderSelect(pos,SELECT_BY_POS,MODE_TRADES))
{
if (OrderSymbol()!=Sumbol||OrderMagicNumber()!=Magic)continue;
if (OrderSymbol()==Sumbol&&OrderMagicNumber()==Magic)
{
kolpos++;
}
}
}
//---
if(kolpos==0)
{
//---
if(SSA>SSB&&Close[1]>SSA&&Open[1]<SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//---
if(SSB>SSA&&Close[1]>SSB&&Open[1]<SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_BUY,Lot,Ask,10,Ask-SL*Point,Ask+TP*Point,"",Magic,0,Green);
}
//--
if(SSA<SSB&&Close[1]<SSA&&Open[1]>SSA&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---
if(SSB<SSA&&Close[1]<SSB&&Open[1]>SSB&&Volume[0]<3)
{
f12=OrderSend(Sumbol,OP_SELL,Lot,Bid,10,Bid+SL*Point,Bid-TP*Point,"",Magic,0,Red);
}
//---

}
return(0);
}
При компиляции выходят 9 ошибок.
 

Nart60

Активный участник
При компиляции выходят 9 ошибок.
Чуть выше в теме файл без ошибок. Торгует, но думаю надо для стоп лосс сделать отступ немножко далее, чтобы при хорошей волатильности не цепляло. И соответственно увеличить тейк профит. Наверное надо вот здесь подвинтить, что я и сделаю в советнике: extern int SL=50;
extern int TP=150;
 
Последнее редактирование:

Nart60

Активный участник
Советник подправил. Но интересно, у одного брокера работает советник- дает хорошие результаты (это демо счет), У другого молчит, никакие сделки не открывает (это реальный счет), только улыбается.
 

Joker62

Почетный гражданин
Советник подправил. Но интересно, у одного брокера работает советник- дает хорошие результаты (это демо счет), У другого молчит, никакие сделки не открывает (это реальный счет), только улыбается.
Это у тебя так работает индикатор по методу Ишимоку. Прогони в тестере, особенно на визуале, и там увидишь, что сделки открывает не часто.:)
 

Nart60

Активный участник
Реальный счет сделки не дает

А вот у этого брокера почему то сделки советник открывает часто и с прибылью. Прилагаю скриншот

Screenshot_2.png
 
Последнее редактирование:

Joker62

Почетный гражданин
А вот у этого брокера почему то сделки советник открывает часто и с прибылью. Прилагаю скриншот

Посмотреть вложение 252934

Скриншот, который ты показал, он на 5-ти знаке, да, работать он будет без проблем, а вот если на 4-знаке - будет молчать как партизан.оО
Надо дорабатывать бота, чтобы автоматом определял значность у торгуемого брокера.:facepalm:
 

Nart60

Активный участник
У второго брокера (что реал) также 5 знаков (здесь сделки открыты в ручную)

Screenshot_3.png
 

gek

Элитный участник
Чуть выше в теме файл без ошибок. Торгует, но думаю надо для стоп лосс сделать отступ немножко далее, чтобы при хорошей волатильности не цепляло. И соответственно увеличить тейк профит. Наверное надо вот здесь подвинтить, что я и сделаю в советнике: extern int SL=50;
extern int TP=150;

А где можно MQL-файл без ошибок посмотреть,потестировать?:)
 

Nart60

Активный участник

Вложения

  • F1.mq4
    F1.mq4
    2,7 КБ · Просмотры: 164
Последнее редактирование:

Nart60

Активный участник
Причина во мне, оказывается лот установил в разы больше, чем может осилит депозит. Советник заработал и на реальном счете после откорректировки (уменьшения) лота.
 
Верх