Советники, эксперты, форекс роботы Обсуждение, поиск и тестирование форекс советников, роботов, экспертов и МТС

Ответить
08.03.2012, 10:31
Аватар для Hanoy
Hanoy Hanoy вне форума Прохожий
Регистрация: 28.11.2011 / Сообщений: 2
Поблагодарили 0 раз(а) / Репутация: 1

По умолчанию Напишите пожалуйста советника на индикаторе

Помогите пожалуйста написать советника на индикаторе Q2MA.
Простейший алгоритм - сигнал есть,открываем сделку,сигнал в другую сторону -закрываем прошлую,открываем новую.
08.03.2012, 18:23
Аватар для byf59
byf59 byf59 вне форума Активный участник
Регистрация: 14.03.2010 / Сообщений: 108
Поблагодарили 76 раз(а) / Репутация: 77
Коллеги, у кого нибудь есть что-нибудь по этому зверю? Тестится, но на демо и на реале почемуто пока не запустился, в коде вроде бы навскидку запретов не нашел. Подскажите, плиз.
10.03.2012, 19:08
Аватар для Yuri A.Soloviev
Yuri A.Soloviev Yuri A.Soloviev вне форума Местный знаток
Регистрация: 02.10.2010 / Сообщений: 845
Поблагодарили 769 раз(а) / Репутация: 771
Помогите пожалуйста написать советника на индикаторе Q2MA.
Простейший алгоритм - сигнал есть,открываем сделку,сигнал в другую сторону -закрываем прошлую,открываем новую.

Воспользуйтесь шаблоном iCustom.
« Кто весь день работает, тому некогда зарабатывать деньги. »
Джон Дэвисон Рокфеллер

« Не надо бояться больших расходов, надо бояться маленьких доходов. »
Джон Дэвисон Рокфеллер
-------------------------------------------------------------------------
11.03.2012, 02:57
Аватар для Farrakhov
Farrakhov Farrakhov вне форума Почётный гражданин
За третье место в конкурсе 

Регистрация: 22.12.2009 / Адрес: Семипалатинск / Сообщений: 811
Поблагодарили 441 раз(а) / Репутация: 444
Помогите пожалуйста написать советника на индикаторе Q2MA.
Простейший алгоритм - сигнал есть,открываем сделку,сигнал в другую сторону -закрываем прошлую,открываем новую.
Я балдею с вас господа типа трейдеры .
Вы для начала чтобы просить написать сову вначале пройдитесь по истории по индюку хотябы пару дней если результат положительный то пару месяцев если и тут все ок то все исторю просмотри если ок(я правда такого пока не нашел) то не вздумай про это комунибудь говорить а сам изучи MQL или заплати комунибудь и тд
Здесь же даже по первым точкам видно что сольем депо на флете 6 секунд
Смысл данной концепции ассоциируется с миссификацией парадоксальных иллюзий.
В наш универсальный век когда каждый индивидуум метафизирует в абстракциях не места критериям.
11.03.2012, 10:19
Регистрация: 16.04.2010 / Сообщений: 1,722
Поблагодарили 3,391 раз(а) / Репутация: 3390
Я балдею с вас господа типа трейдеры .
Вы для начала чтобы просить написать сову вначале пройдитесь по истории по индюку хотябы пару дней если результат положительный то пару месяцев если и тут все ок то все исторю просмотри если ок(я правда такого пока не нашел) то не вздумай про это комунибудь говорить а сам изучи MQL или заплати комунибудь и тд
Здесь же даже по первым точкам видно что сольем депо на флете 6 секунд
согласен полностью а вот у меня есть стратегия и на истории ничтяк ну с небольшими погрешностями но в целом бомба тока немогу найти программера чтоб написал под эти 2ва изумительно замечательных индюка простого действительно простого сову скальпера который в итоге всёравно в плюсе остаётся , тепрь вопрос кому интересно скайп Yaroslavikov !!!
11.03.2012, 10:56
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
Помогите пожалуйста написать советника на индикаторе Q2MA.
Простейший алгоритм - сигнал есть,открываем сделку,сигнал в другую сторону -закрываем прошлую,открываем новую.
согласен полностью а вот у меня есть стратегия и на истории ничтяк ну с небольшими погрешностями но в целом бомба тока немогу найти программера чтоб написал под эти 2ва изумительно замечательных индюка простого действительно простого сову скальпера который в итоге всёравно в плюсе остаётся , тепрь вопрос кому интересно скайп Yaroslavikov !!!
Есть на форуме рекламная ветка. Там программистов много.
Если готовы заплатить за работу можно ко мне на мыло. Адрес в подписи.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
11.03.2012, 12:39
Регистрация: 16.04.2010 / Сообщений: 1,722
Поблагодарили 3,391 раз(а) / Репутация: 3390
Вот вариант такоЙ ! воспринимаются только те сигналы которые идут согласно тренду ибо их исполнение более вероятно !
11.03.2012, 16:23
Регистрация: 16.04.2010 / Сообщений: 1,722
Поблагодарили 3,391 раз(а) / Репутация: 3390
Индюки не перерисовываются !
11.03.2012, 16:53
Аватар для Farrakhov
Farrakhov Farrakhov вне форума Почётный гражданин
За третье место в конкурсе 

Регистрация: 22.12.2009 / Адрес: Семипалатинск / Сообщений: 811
Поблагодарили 441 раз(а) / Репутация: 444
Сообщение от: АлександрNT
Привет всем !!! хочу спросить спецов, почему у советника по ценам открытия хорошие результаты, а на всех тиках, ужасные, вот в чем вопрос, возможно ли переделать советника что бы он так же работал как на тестере по ценам открытия, и вообще это реально осуществить на деле,заранее благодарен за ответ.
Есть такая функция называется
void Sleep( int milliseconds)Функция задерживает выполнение текущего эксперта или скрипта на определенный интервал.
Функцию Sleep() нельзя вызывать из пользовательских индикаторов, так как индикаторы выполняются в интерфейсном потоке и не должны его тормозить.
В функцию встроена проверка состояния флага остановки эксперта каждую 0.1 секунды.
примерно так
...
extern int taim=5;
...
q=1000*60*taim;
Sleep(q);
...
которая будет выполнять нужные действия 1 раз в "taim" минут
если надо раз в час то 60 и тд
Смысл данной концепции ассоциируется с миссификацией парадоксальных иллюзий.
В наш универсальный век когда каждый индивидуум метафизирует в абстракциях не места критериям.

Последний раз редактировалось chocolate; 12.03.2012 в 11:57.
11.03.2012, 17:42
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
примерно так
...
extern int taim=5;
...
q=1000*60*taim;
Sleep(q);
...
которая будет выполнять нужные действия 1 раз в "taim" минут
если надо раз в час то 60 и тд
Весёлое решение.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
11.03.2012, 18:04
Аватар для LUKA.
LUKA. LUKA. вне форума САМ ПО СЕБЕ
Регистрация: 19.05.2009 / Сообщений: 1,460
Поблагодарили 3,060 раз(а) / Репутация: 3153
Всем привет!

Возникла проблемка, индюк рисует МА с другого фрейма (пример: на Н1 рисует МА с D1).

На каждом закрытом баре он отрисовывает ской кусок, но пред'идущиие остаются на месте и приходится "Обновлять" в ручную, чтобы МА приняла свой вид на данны момент относительно новых данных.

Вопрос: чего надо вписать в код, чтобы при закрытии бара, он не только дорисовывал кусок но и обновлял предидущии.

Код маленький, но сообразить не могу

Код:
#property copyright "i-$_mtf-ma_2"
#property indicator_chart_window
//+------------------------------------------------------------------+
extern double tf        = 240;  // Тф с какого берем МА
//+------------------------------------------------------------------+
extern int    period    = 34;   // Период МА
extern string _Per1_= "0--SMA  1--EMA  2--SMMA  3--LWMA";
extern int    method    = 2;    // Метод МА
extern string _Per2_= "0-Close 1-Open 2-High 3-Low 4-Median";
extern int    price     = 4;    // Применить к МА
//+------------------------------------------------------------------+
extern string _Per3_= "ЦВЕТ   ТОЛЩИНА    СТИЛЬ";
extern color  col       = Aqua; // Цвет МА
extern int    width     = 2;    // Толщина линии
extern int    style     = 2;    // Стиль линии
//+------------------------------------------------------------------+
extern string _Per4_= "ОТРИСОВКА  БАРОВ";
extern int    CountBars = 1500; // Количество баров отрисовки МА
//----buffers
double ma[];
int init()
  {
  SetIndexBuffer(0,ma);
  SetIndexStyle(0,DRAW_LINE,style,width,col);
  SetIndexLabel(0,"MA " + tf);
  IndicatorShortName("Moving Average (" + tf + ", " + period + ")");
  if (CountBars >= Bars) 
      CountBars = Bars;
  SetIndexDrawBegin(0, Bars - CountBars + 1);
 
   return(0);
  }
int deinit()
  {
 
   return(0);
  }
int start()
  {
   int    cb=IndicatorCounted();
   SetIndexDrawBegin(0, Bars - CountBars + 1);
   int i=Bars-cb-1;
   double ctf=Period();
   double r=tf/ctf;
   while(i>=0)
   {
    int k =MathFloor(i/r);
 
    ma[i]=iMA(Symbol(),tf,period,0,method,price,k);
    i--;
   }
   Sleep(10000);
   return(0);
  }
//+------------------------------------------------------------------+
11.03.2012, 18:45
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
Всем привет!

Возникла проблемка, индюк рисует МА с другого фрейма (пример: на Н1 рисует МА с D1).

На каждом закрытом баре он отрисовывает ской кусок, но пред'идущиие остаются на месте и приходится "Обновлять" в ручную, чтобы МА приняла свой вид на данны момент относительно новых данных.

Вопрос: чего надо вписать в код, чтобы при закрытии бара, он не только дорисовывал кусок но и обновлял предидущии.

Код маленький, но сообразить не могу

Код:
#property copyright "i-$_mtf-ma_2"
#property indicator_chart_window
//+------------------------------------------------------------------+
extern double tf        = 240;  // Тф с какого берем МА
//+------------------------------------------------------------------+
extern int    period    = 34;   // Период МА
extern string _Per1_= "0--SMA  1--EMA  2--SMMA  3--LWMA";
extern int    method    = 2;    // Метод МА
extern string _Per2_= "0-Close 1-Open 2-High 3-Low 4-Median";
extern int    price     = 4;    // Применить к МА
//+------------------------------------------------------------------+
extern string _Per3_= "ЦВЕТ   ТОЛЩИНА    СТИЛЬ";
extern color  col       = Aqua; // Цвет МА
extern int    width     = 2;    // Толщина линии
extern int    style     = 2;    // Стиль линии
//+------------------------------------------------------------------+
extern string _Per4_= "ОТРИСОВКА  БАРОВ";
extern int    CountBars = 1500; // Количество баров отрисовки МА
//----buffers
double ma[];
int init()
  {
  SetIndexBuffer(0,ma);
  SetIndexStyle(0,DRAW_LINE,style,width,col);
  SetIndexLabel(0,"MA " + tf);
  IndicatorShortName("Moving Average (" + tf + ", " + period + ")");
  if (CountBars >= Bars) 
      CountBars = Bars;
  SetIndexDrawBegin(0, Bars - CountBars + 1);
 
   return(0);
  }
int deinit()
  {
 
   return(0);
  }
int start()
  {
   int    cb=IndicatorCounted();
   SetIndexDrawBegin(0, Bars - CountBars + 1);
   int i=Bars-cb-1;
   double ctf=Period();
   double r=tf/ctf;
   while(i>=0)
   {
    int k =MathFloor(i/r);
 
    ma[i]=iMA(Symbol(),tf,period,0,method,price,k);
    i--;
   }
   Sleep(10000);
   return(0);
  }
//+------------------------------------------------------------------+
Цитата:
int IndicatorCounted( )Функция возвращает количество баров, не измененных после последнего вызова индикатора. Большинство подсчитанных баров не нуждается в пересчете. Функция используется для оптимизации вычислений.
Это применяют что бы не персчитывать то что уже посчитано ранее.
По простому, вместо IndicatorCounted( ) подставить 0 и индикатор будет весь пересчитываться каждый раз.
Да ещё в конце попытка усыпить индикатор на 10 секунд. Sleep(10000);
Бесполезно. Индикатор спать не будет. Это только для советников и скриптов. Можно просто убрать.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
LUKA. 
11.03.2012, 19:38
Аватар для LUKA.
LUKA. LUKA. вне форума САМ ПО СЕБЕ
Регистрация: 19.05.2009 / Сообщений: 1,460
Поблагодарили 3,060 раз(а) / Репутация: 3153
Спасибо! Ugar.

Про Sleep индикаторов знаю, но к стати, как то читал статью в codebase, один парень вроде написал функцию, котороя позволяет отсрочить обновление индикатора.
11.03.2012, 20:10
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
Спасибо! Ugar.

Про Sleep индикаторов знаю, но к стати, как то читал статью в codebase, один парень вроде написал функцию, котороя позволяет отсрочить обновление индикатора.
Не знаю, не читал. Я бы записал текущее время в переменной объявленной на глобальном уровне. В функции start() проверял прошло ли время заданной паузы с момента записанного в эту переменную. Если не прошло выход из start(), а если прошло обновить индикатор и перезаписать в эту переменную текущее время.
Или можно оформить как пользовательскую функцию.
В начале функции вызвать.
start(){
if(!PauseSec(10))return(0);
дальше выполняется остапльной код функции старт индикатора.
Код:
//+------------------------------------------------------------------+
//|Функция от Ugar eMail:ugar68@bk.ru                                |
//+------------------------------------------------------------------+
//Функция возвращает true если с последнего обращения прошло больше или равно
//секунд. Иначе false.
//sec - пауза в секундах.
bool PauseSec(int sec)
   {
   bool ret=false;
   static datetime LastSec;
   datetime cur=TimeCurrent();
   if(cur>=LastSec+sec)
      {
      LastSec=cur;
      ret=true;
      }
   return(ret);
   }
Только что нацарапал функцию. Не проверял.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!

Последний раз редактировалось Ugar; 11.03.2012 в 20:13.
LUKA. 
12.03.2012, 07:53
Аватар для Farrakhov
Farrakhov Farrakhov вне форума Почётный гражданин
За третье место в конкурсе 

Регистрация: 22.12.2009 / Адрес: Семипалатинск / Сообщений: 811
Поблагодарили 441 раз(а) / Репутация: 444
Весёлое решение.
можно конечно сделать (например для Н1) исполнять советник на 0-й минуте и ставить слееп на 60 секунд тогда получится совсем точно по ценам открытия
Смысл данной концепции ассоциируется с миссификацией парадоксальных иллюзий.
В наш универсальный век когда каждый индивидуум метафизирует в абстракциях не места критериям.

Последний раз редактировалось Farrakhov; 12.03.2012 в 07:59.
12.03.2012, 08:12
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
можно конечно сделать (например для Н1) исполнять советник на 0-й минуте и ставить слееп на 60 секунд тогда получится совсем точно по ценам открытия
Можно. И на первый взгляд устраняется одна из проблем этого метода. Ну да ладно. Нравится Вам этот метод, пользуйтесь на здоровье.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
15.03.2012, 19:12
Аватар для Grigor33
Grigor33 Grigor33 вне форума Новичок форума
Регистрация: 12.11.2011 / Сообщений: 31
Поблагодарили 27 раз(а) / Репутация: 28
Привет всем!!!

Хотел спросить разрешат ли мне так же торговать на реале, не отправят ли меня в бан за такую торговлю???.
Отчет прилагаю.
Это моя ручная ТС с графическим советником (сов взят с этого форума). Стопы в системе есть, сов закрывает все сделки при определённом убытке, тейк закрываю до следующего сигнала ТС или на своё усмотрение.
15.03.2012, 19:46
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
Привет всем!!!

Хотел спросить разрешат ли мне так же торговать на реале, не отправят ли меня в бан за такую торговлю???.
Отчет прилагаю.
Это моя ручная ТС с графическим советником (сов взят с этого форума). Стопы в системе есть, сов закрывает все сделки при определённом убытке, тейк закрываю до следующего сигнала ТС или на своё усмотрение.
А чё вдруг о бане задумался? Стоит наверное кучу ордеров заменить одним, но с суммарным лотом. Да и счёт микро не подойдёт, там лоты меньше, надо классик.
Из за кучи приказов за короткое время можно получить задержки исполнения или другие причины не выполнения приказов, но не бан. Замена кучи ордеров одним, решит эту проблему.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
15.03.2012, 20:04
Аватар для Grigor33
Grigor33 Grigor33 вне форума Новичок форума
Регистрация: 12.11.2011 / Сообщений: 31
Поблагодарили 27 раз(а) / Репутация: 28
А чё вдруг о бане задумался? Стоит наверное кучу ордеров заменить одним, но с суммарным лотом. Да и счёт микро не подойдёт, там лоты меньше, надо классик.
Из за кучи приказов за короткое время можно получить задержки исполнения или другие причины не выполнения приказов, но не бан. Замена кучи ордеров одним, решит эту проблему.
Спс за дельный ответ
Да и ещо хотел спросить есть некоторые конторы которые предлагают без депозитный бонус. Могу ли я без депозитный счет прировнять к реалу, ну я имею ввиду нету ли у без деп. реквот, проскальзывание для заманухи клиентов или они всё таки есть и на без.депе.
15.03.2012, 20:23
Регистрация: 13.03.2009 / Сообщений: 2,406
Поблагодарили 1,980 раз(а) / Репутация: 2057
Спс за дельный ответ
Да и ещо хотел спросить есть некоторые конторы которые предлагают без депозитный бонус. Могу ли я без депозитный счет прировнять к реалу, ну я имею ввиду нету ли у без деп. реквот, проскальзывание для заманухи клиентов или они всё таки есть и на без.депе.
Во многих конторах с такими заманухами, обычно компенсируется жуткими условиями. Например, на инстафорекс спред по евре 3 пункта. Это грабёж.
Глубокое понимание процессов помогает в работе, но сильно мешает в отдыхе.
http://forexsystems.ru/signaturepics/sigpic3798_1.gif
Чужие программы не переделываю!
Ответить


Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Выкл.
Pingbacks are Выкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Закономерности графиков и общая картина FXWizard Основы рынка Форекс 2 31.10.2008 06:58


Текущее время: 02:51. Часовой пояс GMT.


Перевод: zCarot
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.
SEO by vBSEO