Игрушки от Vinin

 
Решил создать тему что бы выкладывать "Игрушки" в одно место.
 

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




extern double Lots = 0.1;        //размера лота при нулевом риске
extern double MaximumRisk=5.0;   //варьируемый размер риска
extern int cmd=OP_BUY;           //команда для первого входа
extern int TP=200;               //Тейкпрофит
extern int SL=200;               //Стоплосс
extern int MagicNumber = 0;      //Магическое число
Файлы:
 

Виктор, привет!

Такую игрушку и в руках подержать приятно. Такой простой и грамотный код редко теперь встретишь.

Даже захотелось с ним позаниматься и вот чего удалось подработать:

Если мы будем смотреть только последнюю сделку в истории, то можно избавиться от цикла:

int Signal()
  {
  OrderSelect(OrdersHistoryTotal()-1, SELECT_BY_POS, MODE_HISTORY);
  if(OrderSymbol()==Symbol() && OrderMagicNumber()==MagicNumber)return(MathAbs(OrderType()-1));
  return(-1);
  }
 

Весьма полезная игрушка! Очень замечательно с ее помощью подбирать оптимальные значения СЛ и ТП . И написана красиво . Спасибо!

 

По очередной просьбе следующая игрушка.

Но позиция открывается в туже сторону, если последняя сделка была прибыльной, и в противположную, если сделка была убыточной

Параметры те же самые

Файлы:
 

Это уже не игрушка. И не советник, а это уже индкатор. Полный аналог LSMA, но с другой скоростью расчетов

Файлы:
 
Age Of Empires послажнее, но зато и стротигичиски поинтиреснея!!! Единственный минус - от Майкрасофт! :)
 

.FG писал (а):
Age Of Empires послажнее, но зато и стротигичиски поинтиреснея!!! Единственный минус - от Майкрасофт! :)

Ну это-ж надо так умудриться!!! Это - залёт, парень.

 

Виктор, хотел вам задать вопрос по коду. У вас встречается подобная конструкция:


   static int prevtime=0;
   if(iTime(Symbol(),PERIOD_D1,0) == prevtime)  return(0);
   prevtime = iTime(Symbol(),PERIOD_D1,0);
Насколько я понимаю - это проверка в эксперте на фомирование нового бара. Не могли бы вы обьяснить зачем она нужна (думаю для того, чтобы открывать ордер только с приходом нового бара, но зачем, ведь с приходом нового бара Ask может сильно измениться, а с ним и сигнал на совершение сделки???)
 
seifer:

Виктор, хотел вам задать вопрос по коду. У вас встречается подобная конструкция:


   static int prevtime=0;
   if(iTime(Symbol(),PERIOD_D1,0) == prevtime)  return(0);
   prevtime = iTime(Symbol(),PERIOD_D1,0);
Насколько я понимаю - это проверка в эксперте на фомирование нового бара. Не могли бы вы обьяснить зачем она нужна (думаю для того, чтобы открывать ордер только с приходом нового бара, но зачем, ведь с приходом нового бара Ask может сильно измениться, а с ним и сигнал на совершение сделки???)

Заказчик просил по открытию бара, он такой вариант и получил.

Была бы другая задача, был бы другой вариант.

 

Индикатор VPCI

Описание в журнале "Forex Magazine" № 221 за май 2008 года

Схема работы там же.

Файлы:
vpci.mq4  3 kb