Хочу создать скальпера ScaCo

SlavikSunny

Местный знаток
Сделал. Есть фильтры МА, ATR, время, закрытие по обратному сиганлу или по нормальному и т.д.
По умолчанию настроен как в первом посту.

P.S. Зря старался. На EURJPY M5 сегодня как и хотел, но по истории слив.

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

SlavikSunny

Местный знаток
вроде уже лучше. атр включен,сенсетив 31
 

Вложения

  • TesterGraph.jpg
    TesterGraph.jpg
    33,9 КБ · Просмотры: 16

eevviill

Заблокирован
Нужна помощь в идеи. Хочу сделать так чтобы можно было пользоватся стопами и трейлингом. Пока получается тка что при закрытии ордера по стопам, сразу открывается новый ордер так как есть сигнал на вход. Хочу это исправить. Нужно как то придумать чтобы сигнал был именно на том месте где появился сигнал.

PHP:
//поиск пиков и низин
for(int i=1;i<Bars;i++)
{
double high_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,i);
double low_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,i);


if(high_arrow!=0) {low_arrow=0;en_bar_h=i;break;}
if(low_arrow!=0)  {high_arrow=0;en_bar_l=i;break;}
}


high_arrow_en = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,en_bar_h);
low_arrow_en = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,en_bar_l);


//сигнал для бай
if(low_arrow_en!=0 && coral2<coral1) return(1);

//сигнал для сел
if(high_arrow_en!=0 && coral2>coral1) return(-1);
 

SlavikSunny

Местный знаток
добавить условие Если закрылись по стопу то обращаемся к корал,затем ждем новый пик,если есть все условия-входим.
 

Abi

Элитный участник
Нужна помощь в идеи. Хочу сделать так чтобы можно было пользоватся стопами и трейлингом. Пока получается тка что при закрытии ордера по стопам, сразу открывается новый ордер так как есть сигнал на вход. Хочу это исправить. Нужно как то придумать чтобы сигнал был именно на том месте где появился сигнал.

PHP:
//поиск пиков и низин
for(int i=1;i<Bars;i++)
{
double high_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,i);
double low_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,i);
 
 
if(high_arrow!=0) {low_arrow=0;en_bar_h=i;break;}
if(low_arrow!=0)  {high_arrow=0;en_bar_l=i;break;}
}
 
 
high_arrow_en = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,en_bar_h);
low_arrow_en = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,en_bar_l);
 
 
//сигнал для бай
if(low_arrow_en!=0 && coral2<coral1) return(1);
 
//сигнал для сел
if(high_arrow_en!=0 && coral2>coral1) return(-1);

если я правильно понял - попробуй это добавить...

//поиск пиков и низин
for(int i=1;i<Bars;i++)
{
double high_arrow1 = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,i);
double high_arrow2 = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,i+1);

double low_arrow1 = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,i);
double low_arrow2 = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,i+1);


if(high_arrow1!=0 && high_arrow2==0) {low_arrow=0;en_bar_h=i;break;}
if(low_arrow1!=0 && low_arrow2==0) {high_arrow=0;en_bar_l=i;break;}
}


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

eevviill

Заблокирован
если я правильно понял - попробуй это добавить...
...
Не получается. Выходит что очередным перебором мы находим тот же сигнал. Тоесть получается что (типа) если над МА то бай делаем. А надо как только МА сменил направление.
 

eevviill

Заблокирован
Вот тест за год на Н1. Думаю если решить проблему с повторным входом, то на М5 можно будет получить нормальную прибыль.
 

Вложения

  • TesterGraph СКо.jpg
    TesterGraph СКо.jpg
    32,8 КБ · Просмотры: 20

Abi

Элитный участник
Не получается. Выходит что очередным перебором мы находим тот же сигнал. Тоесть получается что (типа) если над МА то бай делаем. А надо как только МА сменил направление.
да я сам уже понял - хотел удалить свой комент, а ты уже ответил...
бум думать....:fa:
 

Abi

Элитный участник
а если так....
PHP:
//поиск пиков и низин
for(int i=1;i<Bars;i++)
{
double high_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,i);
double low_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,i);
 
 
if(high_arrow!=0&&high_arrow!=prev_high_arrow)  {low_arrow=0;en_bar_h=i;prev_high_arrow=high_arrow;break;}
if(low_arrow!=0&&low_arrow!=prev_low_arrow)      {high_arrow=0;en_bar_l=i;prev_low_arrow=low_arrow;break;}
else return;
}

заводим глобальные переменные:
prev_high_arrow и prev_low_arrow, где храним предыдущие пики, если новые вычисленные пики не равны прежним = то все ОК = открываем ордер, иначе на выход ...
 

eevviill

Заблокирован
а если так....
PHP:
//поиск пиков и низин
for(int i=1;i<Bars;i++)
{
double high_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,0,i);
double low_arrow = iCustom(Symbol(),0,"PBF_Scalper_Show_Me (e)(3Nymous)",Sensetive,1,i);
 
 
if(high_arrow!=0&&high_arrow!=prev_high_arrow)  {low_arrow=0;en_bar_h=i;prev_high_arrow=high_arrow;break;}
if(low_arrow!=0&&low_arrow!=prev_low_arrow)      {high_arrow=0;en_bar_l=i;prev_low_arrow=low_arrow;break;}
else return;
}

заводим глобальные переменные:
prev_high_arrow и prev_low_arrow, где храним предыдущие пики, если новые вычисленные пики не равны прежним = то все ОК = открываем ордер, иначе на выход ...
Пробовал. Та же история.

P.S. Гы гы. Даже такие же название переменным давал.
 
Последнее редактирование:
  • Like
Реакции: Abi

Abi

Элитный участник
eevviill
слушай , а может high_arrow и prev_high_arrow просто не нормализованы и каждая записывается с 8 знаками после запятой и наверно при новом поиске по графику отличаются в 5-8 знаке, соответственно функция считает старый пик как новый,
попробуй нормализовать их.
 

eevviill

Заблокирован
eevviill
слушай , а может high_arrow и prev_high_arrow просто не нормализованы и каждая записывается с 8 знаками после запятой и наверно при новом поиске по графику отличаются в 5-8 знаке, соответственно функция считает старый пик как новый,
попробуй нормализовать их.
Наверно я что то не доганяю. При чём здесь количество знаков после точки?
 

eevviill

Заблокирован
ScaCo (e2)

1)Тперь можно использовать всё что связано с стопами.
2)Есть переключатель, котроый регулирует открывать ордер или нет при ситуации только если пик выше(для бай) или ниже(для сел).
 

Вложения

  • ScaCo (e2).mq4
    14,4 КБ · Просмотры: 26
Верх