MT4で箱を描く方法は? - Page 2
ページ 2 - 324 FirstFirst 1234 最終最終
Results 11 to 20 of 32

Thread: MT4で箱を描く方法は?

  1. #11
    1. #property copyright 2. #property link 1 と 2 は、スクリプトを識別するためだけに存在します (コーディングには重要ではありません)。 #property indicator_chart_window 各ウィンドウを値として、チャートを含むウィンドウは 0 で、下部の各インジケータは値 1 から x を受け取ります。したがって、indicator_chart_window で指標を作成すると、グラフィックはウィンドウ #0 (チャート ウィンドウ) に配置されます。 indicator_separate_window を使用すると、MACD や RSI などの別のウィンドウでインジケーターが作成されます... Wizard(Check Box) #property は、インジケーターのさまざまな側面を定義するためにあります。後で説明します...4. int init() init は、インジケーターがロードされたときに初期化する必要があるコードを配置する場所です。バッファまたはグローバル変数と同様に、一度だけ実行されます...5. int deinit() deinit は init の逆です。そのため、インジケーターがチャートから削除されたときに実行されます。例: チャート ウィンドウにテキスト オブジェクトを配置した場合、インジケーターを削除するときにそれらを削除するか、そこに残します。 int start() が init として呼び出された後、新しい入力 (すべてのティック値) が入るたびに、アプリケーションは start 関数を実行します...これでベースは終了です... 例: グローバル変数を宣言する場合上記の init (関数内ではなく、以下を参照) like double test=0;次に、init に test=1; を入れます。そして、最初に test = 2; を入れます。次に、インジケーターをロードすると、テストは値として 1 を受け取ります。開始がトリガーされるたびに、test は値 double test=0 として 2 を受け取ります。 int init(){ テスト=1;コメント(テスト:,テスト);} int start(){ テスト=2;コメント(テスト:,テスト); Ps .: コメントは、ウィンドウ チャートの左隅にテキストを配置し、エキスパート タブの下のターミナル ウィンドウに印刷するために使用されます。また、start から test を削除すると、常に 1 が出力されることがわかります。init を実行してすぐに開始するため、実装されている方法は役に立たないため、test は常に 2 になります。 . Ps .: これを読んでいる人のために... これは単なる基本的な説明です.レッスンを作成することは私の注意ではありません... このスレッドを参照してください。よくできています。

  2. #12
    はい、もちろんしたいです!!私はあなたの指示に従いました。 Indicators フォルダーに IndicatorProto001.mq4 という新しいインジケーターがあります。あなたがいるとき、次のステップの準備ができています。それまでの間、インディケータについて説明しているレッスン 10 から 12 を読み直します。

  3. #13
    最初のインジケーターを作成し、基本を示すお手伝いをします... もちろん、すべてを深く理解するには、コース (pdf) を見てレッスンを行う必要があります... ステップ 1- ブランクを作成する, Custom Indicator (FilenewCustom indicator) 好きな名前をつけてください(存在しない名前) 今はすべてデフォルトのままにしておきます(Do next) その後何も書きません, F5 を実行してインジケーターをコンパイルします 今すぐ購入する必要がありますin you MT4 Custom list そして、そこから始めます... ご希望の方はもちろん!!! :-)

  4. #14
    gt;gt;ところで…インジケーターの仕組みがはっきりと分かりますか? lt;lt;もちろん違います。 gt;gt; EA を構築する前に、小さなカスタム インジケーターの構築を試みる必要があります。 lt;lt;私は、自分を惹きつける主題に頭を悩ませることで有名です。 (EA を書くのと同じように) 最初は非常に混乱しますが、最終的には理解できるようになります。あなたは専門家です!ステップ 3 から 5 を調べた後、ステップ 1 に進みます。だから私はあなたのアドバイスを受けて、最初にRSIインジケーターで遊んでみます.今のところ、EA を休ませて、より基本的なことを学びます... gt;gt;実際のインジケーターとカスタム インジケーターを並べて配置し、正しいことを行ったかどうかを確認してください lt;lt;これは良い考えのように思えます..私とのあなたの助けと忍耐に再び感謝します.

  5. #15
    また、私はこれを書きます: for(int x=0 ; x lt; limit ; x ) しかし、実際には、最後から最新のろうそくまで開始したいので、 for(int x=limit ; xgt;=0 ; x--) どうして?あなたのインディオールが過去の価値から追加している場合、最初に計算していない場合、どのように追加できますか?例: 現在の値が gt であるかどうかを indior に表示させたい場合。 0 または lt; 0 を最後の値と比較すると、最後の値を取得できる必要がありますが、ゼロ (Buffer[0]) から開始して配列を作成するため、Buffer[1],Buffer[2] にはまだ値がありません。 .. ところで.. 室内の仕組みがハッキリ分かりますか? EA を構築する前に、小さなカスタム インテリアの構築を試みる必要があります。例のRSIで再作成するように。方程式を再発明するのではなく、RSI 関数を使用して購入します。したがって、実際の屋内とカスタムの屋内を並べて配置し、正しいことをしたかどうかを確認できます...

  6. #16

    Quote Originally Posted by ;
    整数制限 = 4; for(int x=0 ; x lt; limit ; x ) { Close[x]=iRSI( NULL,0,21,PRICE_CLOSE ,x); }
    最初の Close[] は MQL フレームワークによって定義されます。情報を取得するためにのみ使用できます...しかし、配列を使用できます。例: double MyArray[];またはダブル MyLilttleBuz[];質問? Candle Close Value を変更する理由は何ですか?代わりに、indior(line) を描画するバッファーに RSI 値を指定する必要があります。 lt;- バッファの作成に使用 値を受け取るのはバッファです。これらの値は、アプリケーションが内側の線を描画するために使用します。また、ループに 4 を使用すると、4 つのろうそくの長さの行しか得られないため、他のろうそくの情報を表示できませんでした (歴史的なテストとしましょう)。

  7. #17
    それで、これは理にかなっていますか、それとも私は道を外れていますか? int limit = Bars-IndiorCounted();/.. 'Bars' から IndiorCounted() を引いた値に等しい for(int x=0 ; x lt; limit ; x )/'x' が 0 で 'Limit' より小さい場合、'x' を 1 増やしますそして、次のことを続けてください.... {/(Buffer[array] = iRSI(......,x) High[x]=iRSI(NULL,0,21,PRICE_CLOSE,x);/Could Close[x] work here instead of High[x]? } これにより、既存のローソク足をやり直すことなく、以前のすべてのローソク足と、新しいローソク足ごとに RSI が実行されるようです (正しいですか?)。最後の 5 バーのみが必要な場合は、Limit を '4' に設定できます... (?) と、最後の 5 バー (?) のようなもの (?): int limit = が得られるのは当然のことです。 4; for(int x=0 ; x lt; limit ; x ) { Close[x]=iRSI( NULL,0,21,PRICE_CLOSE ,x); } ネバーランドに行く途中でしたら、お知らせください。これを考え直してください。

  8. #18
    値の Buffer(Array) は 0 から始まります。例: 5 番目のローソク足の高値を取得するには、High[4] と記述します。したがって、シフトは右から左へローソク位置 1 になります。すべてのろうそくの数量を取得するには、'Bars'-1 を使用します。したがって、楽しみのために RSI インディアを作成したい場合は、すべてのろうそく -1 に対して反復を実行します。例: for(int x=0 ; x lt; Bars-1 ; x ){ バッファ[x]=IRSI(......,x);しかし、実際には次のように使用します: int limit = Bars-IndiorCounted(); for(int x=0 ; x lt; 制限 ; x )lt;制限 ;= x=gt;lt;制限;x ){gt;バッファ[x]=IRSI(......,x);なぜIndiorCounted?チャートに初めて indior を配置するとき、ろうそくは描画されないため、IndiorCount はすべてのろうそく (バー) に等しいため、変更されていないろうそくの量のみが得られます (したがって、新しい値が入るたびに再構築されません)。 indior が新しいキャンドル情報を追加するたびに、使用するリソースが少なくなります.lt;/limit;x ){gt;lt;/limitgt;

  9. #19
    OK 私の実験は、しばらくの間スマイリーフェイスとすべてでアクティブであり、何もしていません。私のコードがうまくいかない可能性が非常に高いシナリオについて疑問に思い始めています。このスレッドのより適切な名前は、EA Coding for Dummies 101 のようなものだったと思います。時間とともに良くなります。私はこの段階を通過しなければなりません。とにかく.. ここに質問があります。次の式: iRSI(string symbol, int timeframe, int period, int applied_price, int shift ) このシフトはどういう意味ですか?現在のチャートのバーで過去の期間を意味すると考えています。しかし、それが非常に漠然とした解釈である可能性があることは理解しています。 (これらの変数のオンライン ドキュメントには、非常に一般的な定義があり、実際には十分に説明されていない場合があります。) 正しい方向への小さなステップであっても、まったくステップを踏まないよりはましです。

  10. #20
    あはは!ポイントのより良い説明をしてくれたZeuzereに感謝します。それはまさに私が必要としていたものです.ポイントが何であるかを理解しました。

投稿権限

  • Youma新しいスレッドを投稿しない
  • Youmaは返信しない
  • あなたは添付ファイルを投稿しないかもしれない
  • Youma Notedityourposts
  •  
  • スマイリーはオンです
  • スマイリーはオンです
  • [IMG]コードがオンです
  • [VIDEO]コードがオンです
  • HTMLコードがオフです
This website uses cookies
We use cookies to store session information to facilitate remembering your login information, to allow you to save website preferences, to personalise content and ads, to provide social media features and to analyse our traffic. We also share information about your use of our site with our social media, advertising and analytics partners.