Советник на любимом индюке, или фабрика монстров

  • Автор темы Автор темы ksardas
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

Genry_05

Отдыхает
Ia zdel tak vseo ok. Ia delal ego po sablonu i u nego tam s sl/tp problemi. Kogda stavleaiu sl/tp true on ne otkrivaet ordera. Pomojete? Ato moi pervii sovetni, netu navik. Sp

Советник по этому темплейту работает корректно, это давно проверенный код от Игоря Герасько (Scriptong).,
где все подробно описано.

Обратите внимание на настройки, СЛ и ТП в нем задается в пунктах или волатильности.

extern string A3 = "== Настройка расчета стоп-приказа ===";
extern string A4 = "True - стоп в пунктах, false - в волатильности";
extern bool UseSLInPoints = false;
extern string A5 = "Величина стопа (пункты или волатильности)";
extern double StopLoss = 5;
extern string A6 = "Период ATR, если стоп выражен в волатильностях";
extern int SLATR = 24;
extern string A7 = "== Настройка расчета профита ===";
extern string A8 = "True - профит в пунктах, false - в волатильности";
extern bool UseTPInPoints = false;
extern string A9 = "Величина профита (пункты или волатильности)";
extern double TakeProfit = 1;

По умолчанию (FALSE) : значения СЛ и ТР в волатильности, и 5 ATR для СЛ и 1 ATR для ТР - нормально.
Hо когда вы ставите TRUE : 5 пунктов для СЛ и 1 для ТР не выходят за размер спреда, поэтому сов не открывает сделок.

Вот сет для фунта на м15 и график за июль и начало августа, но рисует индикатор или нет я не смотрел.
 

Вложения

  • Template.gif
    Template.gif
    10,4 КБ · Просмотры: 168
  • gbpusd_m15.set
    gbpusd_m15.set
    1,6 КБ · Просмотры: 60
Последнее редактирование модератором:

coler

Интересующийся
Советник по этому темплейту работает корректно, это давно проверенный код от Игоря Герасько (Scriptong).
К нему есть статья: _http://www.admiralmarkets.ru/mqlabs/04.09.2011-mqlabs-kak-sozdat-ekspert-ne-obladaya-navykami-programmirovaniya
где все подробно описано.

Обратите внимание на настройки, СЛ и ТП в нем задается в пунктах или волатильности.

extern string A3 = "== Настройка расчета стоп-приказа ===";
extern string A4 = "True - стоп в пунктах, false - в волатильности";
extern bool UseSLInPoints = false;
extern string A5 = "Величина стопа (пункты или волатильности)";
extern double StopLoss = 5;
extern string A6 = "Период ATR, если стоп выражен в волатильностях";
extern int SLATR = 24;
extern string A7 = "== Настройка расчета профита ===";
extern string A8 = "True - профит в пунктах, false - в волатильности";
extern bool UseTPInPoints = false;
extern string A9 = "Величина профита (пункты или волатильности)";
extern double TakeProfit = 1;

По умолчанию (FALSE) : значения СЛ и ТР в волатильности, и 5 ATR для СЛ и 1 ATR для ТР - нормально.
Hо когда вы ставите TRUE : 5 пунктов для СЛ и 1 для ТР не выходят за размер спреда, поэтому сов не открывает сделок.

Вот сет для фунта на м15 и график за июль и начало августа, но рисует индикатор или нет я не смотрел.
2015.08.08 08:25:56.413 2015.07.29 19:29 Template_Expert GBPUSD,H1:



OrderSend error 4107
poliubomu ne ho4et s true. bot screen
 
Последнее редактирование модератором:

Genry_05

Отдыхает
2015.08.08 08:25:56.413 2015.07.29 19:29 Template_Expert GBPUSD,H1: OrderSend error 4107

poliubomu ne ho4et s true. bot screen

Нашел ошибку. В вашем варианте темплейта, при расчете в пунктах, отсутствует переменная Point. Добавьте ее и Ваш первый эксперт заработает:). Интересно, как себя покажет индикатор в рынке.

double GetLevel(bool in_points, double value, int atr_period, double price, int koef)
{
if (value == 0) // Если исходная величина равна нулю,
return(0); // ..то ноль и вернем
if (in_points) // Исходная величина задана в пунктах
return(NP(price + koef*value*Point)); // Вернем уровень
 

Вложения

  • Template.png
    Template.png
    12,7 КБ · Просмотры: 74
Последнее редактирование:

coler

Интересующийся
tam eso odna osibka. kogda stavisi sltp b true i sl=350 tp =750 to kogda otkrivaetsea ordera stavleaetsea order so 350 SL i 350 Tp.

double sl = GetLevel(UseSLInPoints, StopLoss,// Формируем значения стоп-приказа и..
SLATR, Ask, -1);
double tp = GetLevel(UseSLInPoints, TakeProfit, SLATR, Ask, 1); // ..профита
if (OpenOrderCorrect(OP_BUY, GetLots(), NP(Ask), sl, tp) != 0)
return(False);

Gde double TP =----tam bilo prosto StopLoss. Ia perepisal Take profit. Spasibo bolisoe za pomosi.
 

coler

Интересующийся
Kak dumaite, zdalati kak tipa martingail? otkritie vseh orderov gde poiavilisi grujo4ki i tp kak v ilane. Sto dumaite?
 

Genry_05

Отдыхает
Kak dumaite, zdalati kak tipa martingail? otkritie vseh orderov gde poiavilisi grujo4ki i tp kak v ilane. Sto dumaite?

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

Genry_05

Отдыхает
:D
Gde double TP =----tam bilo prosto StopLoss. Ia perepisal Take profit. Spasibo bolisoe za pomosi.

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

Кстати, если
extern string A4 = "True - стоп в пунктах, false - в волатильности";
extern bool UseSLInPoints = false;

за июль на м15 фунта в тестере, при спреде 5, 28 сделок на 552$

extern string A4 = "True - стоп в пунктах, false - в волатильности";
extern bool UseSLInPoints = true;

за то-же время 46 сделок, но прибыль 241$ - так что использование ATR рулит
 
Последнее редактирование:

coler

Интересующийся
Za iuli horosie rezultati. No vot kto voizmiotsea testirovati sa poslednie 2 goda?
 

coler

Интересующийся
Ksards. Pomogi pojaluista s expertom. Ho4iu stob na gajdui poiavijivs krug---otkrival ordera, ni toliko na pervom sarike.


double GetLots()
{
int numtrades;
double retlots;
for(int c=OrdersTotal()-1;c>=0;c--)
{
if(!OrderSelect(c,SELECT_BY_POS,MODE_TRADES))
continue;
if(OrderSymbol()==Symbol() && OrderMagicNumber()==mn)
{
numtrades+=1;
}
}

if(numtrades>=0 && numtrades<12)
retlots=T1;
if(numtrades>=12 && numtrades<21)
retlots=T2;
if(numtrades>=21 && numtrades<29)
retlots=T3;
if(numtrades>=29 && numtrades<36)
retlots=T4;
if(numtrades>=36 && numtrades<39)
retlots=T5;
if(numtrades>=39)
retlots=T6;

if(retlots<0.01)
retlots=0.01;

return(retlots);
}


Vot pastavil, no dumaiu sto ne vseo i ne tuda.
 

Вложения

calipsol

Местный житель
Кто-то локера тестирует или уже нет?У меня открыл 10 сделок по одной цене и одинаковым объемом. Что за глюк?
 

Genry_05

Отдыхает
Кто-то локера тестирует или уже нет?У меня открыл 10 сделок по одной цене и одинаковым объемом.[/ QUOTE]
Было такое... Решил подождать, что скажет топикстартер :) или это
только у меня... и он сказал: :D
Что за глюк?.[/ QUOTE]
 

artemka03

Прохожий
Всем привет. По образованию я юрист, в программирвании соответственно ноль... такой вопрос - есть советник, один парень дорабатывал автопрофит с индикаторами, но ссвязь с ним утеряна. Полностью устраивает, кроме одного - бывает выставляет ордер перед сменой тренда. Советник в формате ex4, соответственно его не доработаешь. Необходимо сделать фильтрацию входа по индикатору rsi. Т.е. если больше такого-то уровня, не покупать, если меньше-не продавать. Возможно ли сделать отдельный советник, который будет запрещать работать этому автопрофиту при наличии сигнала от индикатора rsi? Или кто-то может подкорректировать исходный автопрофит? Суть стратегии могу изложить...
 

ksardas

Гуру форума
............... работать этому автопрофиту при наличии сигнала от индикатора rsi? Или кто-то может подкорректировать исходный автопрофит? Суть стратегии могу изложить...
Если ex4 скомпилен в билдах после 5** -просто не открыть..
По поводу разрешения торговли и прочих доработак- вам суда
 

longin

Местный знаток
Доброго времени суток, завсегдатаи ветки.
Прошу помощи в написании эксперта по индюку из этого поста http://forexsystemsru.com/indikatory-foreks/77432-scalping-indicator.html#post919230

В принципе параметры индюка можно подставить в один из Болванов, находящихся в начале ветки, что я собственно и проделывал со многими индикаторами, вот только максимум что могли мои эксперты - выходить в 0.

Теперь по делу:
Покупка - появление оранжевого кружка внизу
Продажа - появление оранжевого кружка вверху

Сигналы появляются с опозданием, но не перерисовывают.

Нужна хотя бы версия с корректным открытием сделок, дальше стратегию можно будет дополнить другими индюками для фильтрации входов.

Я бы и сам смог это сделать, но почему-то никак не могу понять как выловить сигнал появления оранжевого кружка, поскольку он может появиться спустя много баров.

Тестировать думаю лучше на ТФ от М30.

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

Индикатор и картинка во вложении.
 

Вложения

  • Zigzag_v.2.mq4
    Zigzag_v.2.mq4
    12,9 КБ · Просмотры: 183
  • zz.jpg
    zz.jpg
    190,7 КБ · Просмотры: 580

ksardas

Гуру форума
....Я бы и сам смог это сделать, но почему-то никак не могу понять как выловить сигнал появления оранжевого кружка, поскольку он может появиться спустя много баров...

чтоб найти сигнал в течении n баров - можно сделать так
сверху в переменных int ziga=0;
после основного цикла ставим функцию
PHP:
Expand Collapse Copy
int Zig_2() 
{
 double zis  =0;
 
   for (int a=1; a<=15; a++) 
    {
      zis= iCustom(Symbol(),0,"Zigzag_v.22",номер буфера,a);
   
     if (zis>0//(нужное условие) 
       {
       ziga =1;
          break; 
        }
     
      return(ziga);
    }
  return(0); 
  }
перебираем с первого по15 бар, при выполнении условия получем 1, иначе 0
можно по другому - ищем ненулевое значение функции и получаем номер бара -найдем его значение
 

gek

Элитный участник
чтоб найти сигнал в течении n баров - можно сделать так
сверху в переменных int ziga=0;
после основного цикла ставим функцию
PHP:
Expand Collapse Copy
int Zig_2() 
{
 double zis  =0;
 
   for (int a=1; a<=15; a++) 
    {
      zis= iCustom(Symbol(),0,"Zigzag_v.22",номер буфера,a);
   
     if (zis>0//(нужное условие) 
       {
       ziga =1;
          break; 
        }
     
      return(ziga);
    }
  return(0); 
  }
перебираем с первого по15 бар, при выполнении условия получем 1, иначе 0
можно по другому - ищем ненулевое значение функции и получаем номер бара -найдем его значение

ksardas,привет!
Сделай пожалуйста советничка по этому индикатору.
При появлении стрелки -вход,выход.
Также тейк,стоп,трейлинг и если можно б/у.
Зараннее благодарен.
 

Вложения

  • VQ.mq4
    VQ.mq4
    7,1 КБ · Просмотры: 179

calipsol

Местный житель
Ксардас ,а локера последнюю версию дорабатывать уже нет желания?:facepalm:оО
 
Статус
Закрыто для дальнейших ответов.
Верх