コーディングのヘルプ - ページ 26

 

こんにちは。

WPRのインジケータのコードを少し修正していただける方はいらっしゃいますか?

現在、私が理解しているWPRは、各バーのクローズ時にラインを書き込むというものです。

私はWPRが10ピップスの長さのバー(高値-安値=>10ピップス)になったらラインを書き、その後新しいバーを待ってから再び書き込むようにしたいのですが、どうすればよいでしょうか?

私はレンジバーを使用しているので、私のバーは常に10以上です。

もちろん、私はこの改造にお金を払う用意があります。

歯車

ファイル:
wpr.mq4  3 kb
 

WPRのフィルタリング ...

これかもしれない

高値-安値の範囲が必要なフィルターより大きいか等しい場合、通常のWPR値を計算し、そうでない場合は以前の値を引き継ぎます。以下は比較です:上がWPR、下がフィルターが0に設定されたこのインディケータ、下がフィルターが10pipsに設定されたこのインディケータです。

追記:フィルターをpips単位で設定したいので、高い時間枠では、より大きなフィルターサイズを使用する必要があるでしょう。

cog09:
こんにちは。

WPRのインジケータのコードを少し修正できる方はいらっしゃいますか?

現在、私が理解しているWPRは、各バーのクローズ時にラインを書き込むというものです。

私が望むのは、WPRはバーが10ピップスの長さ(高値-安値=>10ピップス)になったらラインを書き、その後新しいバーを待ってから再び書き込むということなのです。

私はレンジバーを使用しているので、私のバーは常に10以上です。

もちろん、私はこの改造にお金を払う用意があります。

歯車
ファイル:
 

インジケーターの改造をお願いします。

こんにちは。

まず最初に、フォーラムの皆さんの知識に感謝したいと思います。

これは私の最初の投稿で、私はフランス人です。

私の問題は次のとおりです。

私はrsi_ema_mtfというインディケータを持っていて、そのコードを変更したいと思っています。

IMAonarray "を呼び出す代わりに、"JMA "を呼び出します。

どなたか助けてください。

2つのインジケータを結合しています。

rsi_ema_mtf.mq4。

jma.mq4

ファイル:
jma.mq4  11 kb
 

EAが動作しない

こんにちは、皆さん。

添付された私のEAですが、それはチケット/トレーディングを開くことができませんでした。

誰かが見て、それの何が間違っているのか教えてもらえますか?

感謝

ファイル:
test_ea.mq4  128 kb
 

...

kemal44

私は、あなたのよく似た投稿に回答しています(この投稿 :https://www.mql5.com/en/forum/173219/page196)。

その投稿を読んでください。また、このセクションに行くことをお勧めします。メタトレーダー4 mql 4 - 開発コース。EAのコーディングやインジケーターとの組み合わせについての質問に対する多くの回答がそこにあると思います。

すべてのベスト

kemal44:
こんにちは、皆さん。

添付は私のEAですが、それはチケット/トレーディングを開くことはありませんでした。

誰かが見て、それの何が間違っているのか教えてもらえますか?

感謝
 

(Req) 2桁のペアで使用できるようにコードを少し修正する

親愛なるプログラマーの皆様へ

どなたか、以下のmq4の内容を少し修正して、2桁の日本円のペアで表示できるようにしていただけないでしょうか。このインジケータは通常4桁または5桁の商品でしか表示/動作できませんが、不思議なことに2桁のJPYペアや4桁未満の商品では表示/動作できません。このインジケータを使用することもできますし、それを修正/コード化する価値はあります。私にpmを送るか、ここに投稿してください。ありがとうございます。

#プロパティ indicator_chart_window

#プロパティ indicator_buffers 1

#property indicator_color1 ローングリーン

extern int ndot=5;

extern int CountBars=300;

//---- バッファ

double cfl[];

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

//| カスタムインジケータ 初期化関数

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

int init()

{

文字列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); ZIndicatorVar=ZIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1);

TIndicatorVar=TIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1); 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の内容を少し修正して、2桁のJPYペアで表示できるようにしていただけませんか?このインジケータは通常4桁または5桁の商品でしか表示/動作できませんが、不思議なことに2桁のJPYペアや4桁未満の商品では表示/動作できません。このインジケータを使用することもできますし、それを修正/コード化する価値はあります。私にpmを送るか、ここに投稿してください。ありがとうございます。

#プロパティ indicator_chart_window

#プロパティ indicator_buffers 1

#property indicator_color1 ローングリーン

extern int ndot=5;

extern int CountBars=300;

//---- バッファ

double cfl[];

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

//| カスタムインジケータ初期化関数

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

int init()

{

文字列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); ZIndicatorVar=ZIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1);

TIndicatorVar=TIndicatorVar+iMA(NULL,0,5,3,MODE_SM MA,PRICE_MEDIAN,shift-cnt+1); 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
 

Gann_SQ9_A2インジケータの簡単なMODが必要です...Mladenさん助けてください...

こんにちは、mladenです。

コーディングにお詳しいようですね。私はindiの全くの初心者なので、助けて欲しいのです。

MODE1(またはMODE0、この時点では本当に気にしない)を選択したときに、このindiが1、-1の出力をする必要があります可能であればPLEASE!

出力(1, -1)はIndiの中にすでにありますが、その値は出力されません。

これらの出力は、コードのずっと下の方にあるこの変数から見つけることができます; âåðõ_âíèç.

このindiでいろいろ試してみたところ、(ほぼ)成功したのですが、iCustom関数で indiを呼び出したいEAで使用すると、停止したり、(改造の異なる段階で)いろいろと変なことをしたりしました。

比較のために、「ほぼ動くプロトタイプ」のindi(Gann_SQ9_A4)とオリジナル(Gann_SQ9_A2)を載せました。

もし、現在の「プロトタイプ」が「1 , or -1」をチャート上に表示できるのであれば、その信号をindiの出力にルーティングすることはそれほど難しいことではないと想像します。しかし、私はこのようなことができるほど、indiのことを知らないのです。

本当に助けてくれるといいのですが・・・。

乾杯

AG

ファイル:
 
mladen:
USDJPYでテストしたところ、このように表示されました。

JPY以外のペアに比べて、JPYペアでのシグナルは非常に無意味です(売買シグナルが ない)ので、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桁未満の楽器で動作しないと言う、あなたは親切にそれを再コード化/変更できますか?