Помощь в кодировании - страница 26

 

Привет,

Есть ли здесь кто-нибудь, кто может слегка модифицировать код индикатора WPR для меня?

Как я понимаю WPR в настоящее время, он пишет линию на закрытии каждого бара.

Я бы хотел, чтобы WPR писал линию, как только длина бара достигает 10 пунктов (highlow=>10 пунктов), затем ждал нового бара, прежде чем писать снова.

Я использую диапазонные бары, поэтому мои бары всегда >10.

Очевидно, что я готов заплатить за этот мод.

cogs

Файлы:
wpr.mq4  3 kb
 

WPR отфильтровал ...

Это может быть оно

Это работает следующим образом: если диапазон highlow больше или равен требуемому фильтру, то рассчитывается нормальное значение WPR, в противном случае наследуется предыдущее значение. Вот сравнение: вверху - WPR, внизу - этот индикатор с фильтром, установленным на 0, а внизу - этот индикатор с фильтром, установленным на 10 пунктов.

PS: поскольку вы хотели установить фильтр в пунктах, на более высоких таймфреймах вам, вероятно, придется использовать фильтр большего размера.

cog09:
Привет,

Есть ли здесь кто-то, кто может слегка модифицировать код индикатора WPR для меня?

Как я понимаю WPR в настоящее время, он пишет линию на закрытии каждого бара.

Я бы хотел, чтобы WPR писал линию, как только бар достигнет длины 10 пунктов (highlow=>10 пунктов), а затем ждал нового бара, прежде чем писать снова.

Я использую диапазонные бары, поэтому мои бары всегда >10.

Очевидно, что я готов заплатить за этот мод.

зубцы
Файлы:
 

Нужна помощь в модификации индикатора.

Здравствуйте.

Сначала я хотел бы поблагодарить весь форум за их знания.

Это мое первое сообщение и я француз, тогда извините за мой плохой английский.

Моя проблема заключается в следующем:

У меня есть индикатор rsi_ema_mtf и я хотел бы изменить его кодировку.

Вместо того, чтобы вызывать индикатор "IMAonarray", я вызываю индикатор "JMA".

Пожалуйста, кто-нибудь может мне помочь? Заранее спасибо.

Я соединяю два индикатора:

rsi_ema_mtf.mq4

jma.mq4

Файлы:
jma.mq4  11 kb
 

Советник не работает

Привет, друзья,

В приложении мой советник, он не открыл тикет/торговлю,

не мог бы кто-нибудь взглянуть и сказать мне, что с ним не так?

спасибо

Файлы:
test_ea.mq4  128 kb
 

...

kemal44

Я ответил на очень похожее сообщение от вас (это сообщение : https://www.mql5.com/en/forum/173219/page196 ).

Пожалуйста, прочитайте этот пост. Также, я рекомендую вам посетить этот раздел: Metatrader 4 mql 4 - Курс разработки. Я думаю, там вы найдете много ответов на вопросы о кодировании советников и комбинировании их с индикаторами.

всего наилучшего

kemal44:
Привет, друзья,

В приложении мой советник, он не открыл тикет/торговлю,

не мог бы кто-нибудь посмотреть и сказать мне, что с ним не так?

спасибо
 

(Req) небольшая модификация кода, позволяющая использовать его в парах из 2 цифр

Уважаемые гуру программисты

Не мог бы кто-нибудь из программистов немного модифицировать следующее содержание mq4, чтобы он мог отображаться в парах JPY с 2 цифрами. Этот индикатор может нормально отображаться/работать только на 4-х или 5-ти значных инструментах, но странным образом не может отображаться/работать на парах JPY с 2-мя знаками или на любых инструментах с менее чем 4-мя знаками. Пожалуйста, помогите. вы также можете использовать этот индикатор. стоит ли его модифицировать /кодировать. Пожалуйста, напишите мне или напишите здесь. Большое спасибо.

#property indicator_chart_window

#property indicator_buffers 1

#property indicator_color1 LawnGreen

extern int ndot=5;

extern int CountBars=300;

//---- буферы

double cfl[];

//+------------------------------------------------------------------+

//| Пользовательская функция инициализации индикатора |

//+------------------------------------------------------------------+

int init()

{

string short_name;

//---- строка индикатора

IndicatorBuffers(1);

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,cfl);

//----

return(0);

}

//+------------------------------------------------------------------+

//| |

//+------------------------------------------------------------------+

int start()

{

if (CountBars>=Bars) CountBars=Bars;

SetIndexDrawBegin(0,Bars-CountBars+ndot+1);

int i,shift,cnt,ndot1,counted_bars=IndicatorCounted();

double TYVar,ZYVar,TIndicatorVar,ZIndicatorVar,M,N,AY,AIn dicator;

//----

if(Bars<=ndot) return(0);

//----

shift=CountBars-ndot-1;

while(shift>=0)

{

TYVar=0;

ZYVar=0;

N=0;

M=0;

TIndicatorVar=0;

ZIndicatorVar=0;

ndot1=ndot;

if (shift+1<ndot1) ndot1=shift+1;

for (cnt=ndot; cnt>=1; cnt--) // n=5 - 镱 ?蜩 蝾麝囔

{

N=N+cnt*cnt; //疣忭?55

M=M+cnt; //疣忭?15

}

for (cnt=ndot1; cnt>=1; cnt--) // n=5 - 镱 ?蜩 蝾麝囔

{

ZYVar=ZYVar+(High[shift-cnt+1]+Low[shift-cnt+1])/2*(ndot+1-cnt);

TYVar=TYVar+(High[shift-cnt+1]+Low[shift-cnt+1])/2;

ZIndicatorVar=ZIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1)*(ndot+1-cnt);

TIndicatorVar=TIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1);

}

AY=(TYVar+(N-2*ZYVar)*ndot/M)/M;

AIndicator=(TIndicatorVar+(N-2*ZIndicatorVar)*ndot/M)/M;

cfl[shift]=Close[shift]+((-1000)*MathLog(AY/AIndicator)/500);

shift--;

}

return(0);

}

//+------------------------------------------------------------------+

 

...

Это выглядит так на USDJPY, когда я тестирую его (так что он работает).

annbeea:
Уважаемые гуру-программисты

Не мог бы кто-нибудь из программистов немного изменить следующее содержание mq4, чтобы он мог отображаться на парах JPY с 2 цифрами. Этот индикатор может нормально отображаться/работать только на 4-х или 5-ти значных инструментах, но странным образом не может отображаться/работать на парах JPY с 2 знаками или на любых инструментах с менее чем 4 знаками. Пожалуйста, помогите. вы также можете использовать этот индикатор. стоит ли его модифицировать /кодировать. Пожалуйста, напишите мне или напишите здесь. Большое спасибо.

#property indicator_chart_window

#property indicator_buffers 1

#property indicator_color1 LawnGreen

extern int ndot=5;

extern int CountBars=300;

//---- буферы

double cfl[];

//+------------------------------------------------------------------+

//| Пользовательская функция инициализации индикатора |

//+------------------------------------------------------------------+

int init()

{

string short_name;

//---- строка индикатора

IndicatorBuffers(1);

SetIndexStyle(0,DRAW_LINE);

SetIndexBuffer(0,cfl);

//----

return(0);

}

//+------------------------------------------------------------------+

//| |

//+------------------------------------------------------------------+

int start()

{

if (CountBars>=Bars) CountBars=Bars;

SetIndexDrawBegin(0,Bars-CountBars+ndot+1);

int i,shift,cnt,ndot1,counted_bars=IndicatorCounted();

double TYVar,ZYVar,TIndicatorVar,ZIndicatorVar,M,N,AY,AIn dicator;

//----

if(Bars<=ndot) return(0);

//----

shift=CountBars-ndot-1;

while(shift>=0)

{

TYVar=0;

ZYVar=0;

N=0;

M=0;

TIndicatorVar=0;

ZIndicatorVar=0;

ndot1=ndot;

if (shift+1<ndot1) ndot1=shift+1;

for (cnt=ndot; cnt>=1; cnt--) // n=5 - 镱 ?蜩 蝾麝囔

{

N=N+cnt*cnt; //疣忭?55

M=M+cnt; //疣忭?15

}

for (cnt=ndot1; cnt>=1; cnt--) // n=5 - 镱 ?蜩 蝾麝囔

{

ZYVar=ZYVar+(High[shift-cnt+1]+Low[shift-cnt+1])/2*(ndot+1-cnt);

TYVar=TYVar+(High[shift-cnt+1]+Low[shift-cnt+1])/2;

ZIndicatorVar=ZIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1)*(ndot+1-cnt);

TIndicatorVar=TIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1);

}

AY=(TYVar+(N-2*ZYVar)*ndot/M)/M;

AIndicator=(TIndicatorVar+(N-2*ZIndicatorVar)*ndot/M)/M;

cfl[shift]=Close[shift]+((-1000)*MathLog(AY/AIndicator)/500);

shift--;

}

return(0);

}

//+------------------------------------------------------------------+
Файлы:
test.gif  28 kb
 

Нужен простой MOD для индикатора Gann_SQ9_A2...Mladen помогите пожалуйста...

Привет, Младен.

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

Мне нужно, чтобы этот инди выдавал выходы 1 и -1, когда выбран РЕЖИМ 1 (или РЕЖИМ 0, мне сейчас все равно), если это вообще возможно, ПОЖАЛУЙСТА!

Выходы (1, -1) ВСЕГДА ЕСТЬ в инди, но он не выводит эти значения.

Вы можете найти эти выходы из этой переменной далеко внизу в коде; âåðõ_âíèç.

Я пробовал разные вещи с этим инди и добился (почти) успеха, но при использовании с советником, который я хочу заставить вызывать инди с помощью функции iCustom, он либо замирал, либо делал ряд странных вещей (на разных этапах моддинга).

Я включил "почти рабочий прототип" инди (Gann_SQ9_A4), а также оригинал (Gann_SQ9_A2) для сравнения.

Если текущий "прототип" может отображать "1 , или -1" на графике, то я полагаю, что не так уж сложно направить этот сигнал на выход инди? Но опять же - я не знаю достаточно об инди, чтобы быть в состоянии сделать это!

Я очень надеюсь, что вы сможете помочь.

Будь здоров

AG

Файлы:
 
mladen:
Это выглядит так на USDJPY, когда я тестирую его (так что он работает)

по сравнению с парами, отличными от jpy, сигналы на jpypairs довольно бессмысленны, (нет сигнала на покупку или продажу), поэтому я говорю, что он не работает на парах jpy и всех менее чем 4-значных инструментах, не могли бы вы любезно перекодировать/модифицировать его? большое спасибо.

 

...

Для этого мне нужно знать, как вы используете его для сигналов (из кода я не вижу именно "замысла" индикатора. тем более, что у вас есть часть кода, которая использует будущие значения для расчетов, эта часть :
for (cnt=ndot1; cnt>=1; cnt--) // n=5 - ? ?? ???

{

ZYVar=ZYVar+(High[shift-cnt+1]+Low[shift-cnt+1])/2*(ndot+1-cnt);

TYVar=TYVar+(High[shift-cnt+1]+Low[shift-cnt+1])/2;

ZIndicatorVar=ZIndicatorVar+iMA(NULL,0,5,3,MODE_SMMA,PRICE_MEDIAN,shift-cnt+1)*(ndot+1-cnt);

TIndicatorVar=TIndicatorVar+iMA(NULL,0,5,3,MODE_SMMA,PRICE_MEDIAN,shift-cnt+1);

}

выражение shift-cnt+1 почти всегда использует будущие значения (кроме текущего бара) и приводит к перерисовке индикатора.

annbeea:
по сравнению с парами, отличными от jpy, сигналы на jpypairs довольно бессмысленны, (нет сигнала на покупку или продажу), поэтому я говорю, что он не работает на парах jpy и всех менее чем 4-значных инструментах, не могли бы вы любезно перекодировать/модифицировать его? большое спасибо.