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

 

ただ、1つの観察があります。

このようなコード。

DayLow = iff(dayofmonth != dayofmonth[1], low, min(low, nz(DayLow[1])))

意味:DayLowは現在または過去の最低日の安値の最小値 )高値も同じ)。さて、このように説明すると無害に見えますが、「前日の安値」が何を意味するのか考えてみると、チャートのすべてのバーを考慮していることがすぐに分かります。これは、いくつかのステップ・インディケータや、マーク・ジュリックがストキャスティクス(私はこれを「無限長ストキャスティクス」と呼んでいます)の計算で犯したエラーと同じもので、2つのことを引き起こします:計算によるデータの変形(安値と高値は常に単に低く、または単に高くなり、決してその逆にはなりません)と、最終的には再描画(タイムフレームやシンボルを変更すると、それまで最も古いバーだったのが失われ、これが最終結果に影響を与えることがあります)です。

 

試しにやってみました。今はあまり時間がないので、遠慮なく修正してください。

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

//| Magarto |

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

#property indicator_separate_window

#property indicator_buffers 1

#property indicator_color1 DimGray

double all4[];

double ma[];

double maslopeB[];

double candleOver[];

double bothElder[];

int init()

{

IndicatorBuffers(5);

SetIndexBuffer(0,all4);

SetIndexBuffer(1,ma);

SetIndexBuffer(2,maslopeB);

SetIndexBuffer(3,candleOver);

SetIndexBuffer(4,bothElder);

IndicatorShortName("Magarto");

return(0);

}

int deinit()

{

return(0);

}

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

//| |

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

int start()

{

int counted_bars = IndicatorCounted();

int i,limit;

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

limit = MathMin(Bars-counted_bars,Bars-1);

for(i=limit; i>=0; i--)

{

ma = iMA(NULL,0,30,0,MODE_SMA,PRICE_CLOSE,i);

double maslope = ma - ma;

if(maslope < 0) maslopeB = -1;

else if(maslope > 0) maslopeB = 1;

else maslopeB = 0;

if(((Open + Close + High + Low) / 4) > ma) candleOver = 1; else candleOver = -1;

double xMA = iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,i);

double DayLow = 0;

if(iTime(NULL,PERIOD_D1,i) != iTime(NULL,PERIOD_D1,i+1)) DayLow = iLow(NULL,PERIOD_D1,i);

else DayLow = MathMin(iLow(NULL,PERIOD_D1,i),iLow(NULL,PERIOD_D1,i+1));

double bearpower = DayLow - xMA;

double DayHigh = 0;

if(iTime(NULL,PERIOD_D1,i) != iTime(NULL,PERIOD_D1,i+1)) DayHigh = iHigh(NULL,PERIOD_D1,i);

else DayHigh = MathMax(iHigh(NULL,PERIOD_D1,i),iHigh(NULL,PERIOD_D1,i+1));

double bullpower = DayHigh - xMA;

if (bearpower > 0 && bullpower > 0) bothElder = 1;

else if(bearpower < 0 && bullpower < 0) bothElder = -1;

else bothElder = 0;

all4 = maslopeB + candleOver + bothElder;

}

return(0);

}

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

//| |

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

 

こんにちは、マルチタイムフレームインジケーターについて、長い間私の頭の中にあったことをお聞きしたいのです。

写真を見てください。これはblau ergodic indicatorを使ったダウ・ジョーンズのレンジバー6pipのチャートで、私はその売りシグナルの 瞬間を強調しました。それは、そのろうそくの端に発生します。このキャンドルは14,43で開き、14,57で閉じます。

同じ設定で、レンジバー2pipのチャートにインジケータをプロットし、6pipのレンジバーチャートでそれを指してみました。

6pipチャートのローソク足がまだ閉じていないときに、売りシグナルが始まったことを示しています。これは通常のmtfインジケータの動作であり、そうでないことはあり得ないと思っています。

私の目標は、高いtfのろうそくがまだ閉じていないときに、売り信号の薄いピンクと買い信号の薄い緑の2つの色を作成するだけです。

だから、それはこのようになるはずです。

私の質問です:それはそれを行うことが可能ですか?どのように私はその事をアプローチする必要がありますか?

感謝

ファイル:
my.jpg  114 kb
2_pip.jpg  102 kb
6_pip.jpg  87 kb
 
thefxpros:
こんにちは、私はちょうどマルチタイムフレームインディケータについて非常に長い時間の私の心の中にあるものを聞いてみたかった。

写真を見てください。これは、ダウ・ジョーンズのレンジ・バー6ピップ・チャートで、ブラウ・エルゴード・インディケータを使用したものです。それは、そのろうそくの端に発生します。このキャンドルは14,43で開き、14,57で閉じます。

同じ設定で、レンジバー2pipのチャートにインジケータをプロットし、6pipのレンジバーチャートでそれを指してみました。

6pipチャートのローソク足がまだ閉じていないときに、売りシグナルが始まったことを示しています。これは通常のmtfインジケータの動作であり、そうでないことはあり得ないと思っています。

私の目標は、高いtfのろうそくがまだ閉じていないときに、売り信号の薄いピンクと買い信号の薄い緑の2つの色を作成するだけです。

だから、それはこのようになるはずです。

私の質問です:それはそれを行うことが可能ですか?どのように私はその事をアプローチする必要がありますか?

しゃい

それは行うことができます - ちょうど現在のバーのためのより多くの2つのバッファを追加します。

 
assassin:
私はこのための最初のリンクを送信されました

カーソルを合わせると、その関数が何であるかがわかります。

このように

mladenです。
ただ、1つの観察。

このようなコードです。

DayLow = iff(dayofmonth != dayofmonth[1], low, min(low, nz(DayLow[1])))

DayLowは、当日または前日の安値の最小値(高値も同じ)です。)今、説明すると無害に見えますが、「前日安値」の意味を考えると、チャートのすべてのバーを考慮していることがすぐに理解できます。これは、いくつかのステップ・インディケータや、マーク・ジュリックがストキャスティック(私はこれを「無限長ストキャスティック」と呼んでいます)の計算で犯したエラーと同じもので、2つのことを引き起こします:計算によるデータの変形(安値と高値は常に単に低いか高いかで、決して逆ではありません)と最終的には再描画(タイムフレームやシンボルを変更すると、それまで最も古いバーだったのに失われ、それが最終結果に影響を与える場合があります)です。
エアクエスト
試してみました。今はあまり時間がないので、遠慮なく修正してください。

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

//| Magarto |

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

#property indicator_separate_window

#property indicator_buffers 1

#property indicator_color1 DimGray

double all4[];

double ma[];

double maslopeB[];

double candleOver[];

double bothElder[];

int init()

{

IndicatorBuffers(5);

SetIndexBuffer(0,all4);

SetIndexBuffer(1,ma);

SetIndexBuffer(2,maslopeB);

SetIndexBuffer(3,candleOver);

SetIndexBuffer(4,bothElder);

IndicatorShortName("Magarto");

return(0);

}

int deinit()

{

return(0);

}

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

//| |

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

int start()

{

int counted_bars = IndicatorCounted();

int i,limit;

if(counted_bars<0) return(-1);

if(counted_bars>0) counted_bars--;

limit = MathMin(Bars-counted_bars,Bars-1);

for(i=limit; i>=0; i--)

{

ma = iMA(NULL,0,30,0,MODE_SMA,PRICE_CLOSE,i);

double maslope = ma - ma;

if(maslope < 0) maslopeB = -1;

else if(maslope > 0) maslopeB = 1;

else maslopeB = 0;

if(((Open + Close + High + Low) / 4) > ma) candleOver = 1; else candleOver = -1;

double xMA = iMA(NULL,0,13,0,MODE_EMA,PRICE_CLOSE,i);

double DayLow = 0;

if(iTime(NULL,PERIOD_D1,i) != iTime(NULL,PERIOD_D1,i+1)) DayLow = iLow(NULL,PERIOD_D1,i);

else DayLow = MathMin(iLow(NULL,PERIOD_D1,i),iLow(NULL,PERIOD_D1,i+1));

double bearpower = DayLow - xMA;

double DayHigh = 0;

if(iTime(NULL,PERIOD_D1,i) != iTime(NULL,PERIOD_D1,i+1)) DayHigh = iHigh(NULL,PERIOD_D1,i);

else DayHigh = MathMax(iHigh(NULL,PERIOD_D1,i),iHigh(NULL,PERIOD_D1,i+1));

double bullpower = DayHigh - xMA;

if (bearpower > 0 && bullpower > 0) bothElder = 1;

else if(bearpower < 0 && bullpower < 0) bothElder = -1;

else bothElder = 0;

all4 = maslopeB + candleOver + bothElder;

}

return(0);

}

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

//| |

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

皆さん、おはようございます。

まず、私は自分の仕事に気を配っていないために、謝罪したい、ミアは、要求であり、私はあなたの質問を見ていなかった

あなたが言ったようにMagartoはスペインのユーザーであるmladen

を使用して作業プラットフォームとあなたが見ている

私はMQL4にその戦略を翻訳しようとしている

しかし、プログラミングの私のレベルはあまりにも基本的なものです

私は多くのこの開発に感謝したい

私は、あなたが指標は両端に到達したときにポイントを含めることができれば、お願いすることができます。

そのようなものを視覚化してください。

もう一度、ありがとうございます。

みんなに抱擁fuerte

エルモ

ファイル:
 
Hermo:
おはようございます。

まず、私は自分の仕事に気配りされていないために、謝罪したい、ミアは要求であり、私はあなたの質問を見ていませんでした

あなたが言ったようにMagartoはスペインのユーザーであるmladen

を使用して作業プラットフォームとあなたが見ている

私はMQL4にその戦略を翻訳しようとしている

しかし、プログラミングの私のレベルはあまりにも基本的なものです

私は多くのこの開発に感謝したい

私は、あなたが指標は両端に到達したときにポイントを含めることができれば、お願いすることができます。

そのようなものを視覚化してください。

もう一度、ありがとうございます。

みんなにハグfuerte

ヘルモ

そこに行く、私はいくつかのものを修正しました。コードはオリジナルと同じように見えますが、日足以外のタイムフレームでは、結果の値がtradingviewと異なるようです。tradingviewとMT4の違いによるものなのか、エラーによるものなのかは不明です。ローソクの高値と安値を使っているので、ローソクはプラットフォームによってほとんど同じではないので、違いによるものと思われます。とにかく、これ以上は無理だと思います。

ファイル:
magarto.mq4  4 kb
 
airquest:
お待たせしました、一部修正しました。コードはオリジナルと同じように見えますが、日足以外のタイムフレームでは、結果の値がtradingviewと違うようです。tradingviewとMT4の違いによるものなのか、エラーによるものなのかは不明です。ローソクの高値と安値を使っているので、ローソクはプラットフォームによってほとんど同じではないので、違いによるものと思われます。とにかく、これ以上は無理だと思います。

おはようございます

ありがとうございました。

インジケータが完全に動作するようになりました

改めて、ありがとうございました

でかした

ご許可いただければ、該当箇所に注意書きを入れていただこうと思います。

よろしくお願いします。

Hermoです。

 

助けてください......

spikebars_v3.ex4spikebars_v3.mq4Hi Everyone, I am hoping that someone could help me to set my mt4 expert advisor.I am not good in computing skills.But I would like to make and expert advisor with spike bar indicator that is measured candestick body.

ローソク足本体の大きさを測定するスパイクバーインジケータと一緒に。

私はeaがローソク足ボディのサイズに基づいて購入または販売の位置を開けることがほしいと思う。

例: buy when= bull candlestick appears with the size of 30 pips (to be adjustable).

ストップロス、テイクプロフィットも調整可能。

売り時=ベアローソク足はex.30pipsの大きさで表示されます(調整可能です)。

ストップロスやテイクプロフィットを調整し、ポジションサイズを調整する。

だから私は現在の分析に従って貿易を調節し、ea に私のための貿易をさせることができます。

私はここにスパイクバーインジケータを添付しています。私は初心者なので、親切な人は私を助けてくれることを願っています。

ありがとうございました。

ファイル:
 

こんにちは、皆さん、私は誰かが私のmt4エキスパートアドバイザーを設定するために私を助けることができることを期待しています.私はコンピュータのスキルで良いではありません.しかし、私は作りたい、エキスパートアドバイザー

ローソク足本体のサイズを測定するスパイクバーの表示器と。

私はeaがローソク足ボディのサイズに基づいて購入または販売の位置を開けることがほしいと思う。

例: buy when= bull candlestick appears with the size of 30 pips (to be adjustable).

ストップロス、テイクプロフィットも 調整可能。

売り時=ベアローソク足はex.30pipsの大きさで表示されます(調整可能です)。

ストップロスやテイクプロフィットを調整し、ポジションサイズを調整する。

だから私は現在の分析に従って貿易を調節し、ea に私のための貿易をさせることができます。

私はここにスパイクバーインジケータを添付しています。私は初心者なので、親切な人は私を助けてくれることを願っています。

ありがとうございました。

 
faremie:
こんにちは、皆さん、私は誰かが私のmt4エキスパートアドバイザーを設定するために私を助けることができることを期待しています。

ローソク足本体の大きさを計測するスパイクバーインジケータを搭載した

ローソク足の大きさによって、買いや売りのポジションを持つようにしたいのですが。

ex; buy when= bull candlestick appears with the size of 30 pips (to be adjustable).

ストップロス、テイクプロフィットも調整可能。

売り時=ベアローソク足はex.30pipsの大きさで表示されます(調整可能です)。

ストップロスやテイクプロフィットを調整し、ポジションサイズを調整する。

だから私は現在の分析に従って貿易を調節し、ea に私のための貿易をさせることができます。

私はここにスパイクバーインジケータを添付しています。私は初心者なので、親切な人は私を助けてくれることを願っています。

ありがとうございました。

ファレミー

あなたの言っているインジケータは添付されていないようです。添付していただけませんか?