アドバイスお願いします - RulangからMQL4(four)にインジケータを書き換えるには? - ページ 3

 
Urman Ru:

olyakish_fractals_01"・・・・・・・・。

初心者の方にはあまり良いお手本ではありません。非常に型破りで、極めて贅沢なアプローチによるライティング・インディケーター

 
Dmitry Fedoseev:

初心者の方にはあまり良いお手本ではありません。インジケーターを書くという、型破りで非常に贅沢なアプローチ。

本当に必要なときは、頭の上でズボンを脱がなければならない)。

 
Alexey Viktorov:

ただ、ひとつだけ理解できないことがあります。トピックのタイトルや最初の投稿でMQL5について触れていますが、MQL4でヒントを得て、MQL4でインジケータを編集して満足しているのですね。では、どのような端末にインジケーターが必要なのでしょうか?

言語が違うんですか?何の冗談だ!?

MT4で、確認しました!

MQL4で書かれたMT4用のインジケータをMT5で使用すると、動作しないのでは?その逆もまた然り?

なんということでしょう。

 
Dmitry Fedoseev:
ルランについても、あれは何だったんだ?

私は以前、トレーダーの真似事をしていたのですが、ラムスから始めて、そこの言語で

その言語を別の指標で使おうとしたのですが、MT4に乗り換えてこちらに持ってこようと思ったのですが、うまくいきませんでした。i+2」も確認することを提案しました。でも、もしかしたら私のやり方が悪いのかもしれない。 何でもありだ。
 
Urman Ru:

本当に必要なときは、頭からズボンを脱がなければならない)。

それに、ズボンを頭からかぶる必要がないので、頭から脱がなくていいんです。

たしかにプリムスより少し複雑ですが、可能性は無限大です。

 
Dmitry Fedoseev:

それに、ズボンを頭からかぶる必要がないので、頭から脱がなくていいんです。

たしかにプリムスより少し複雑ですが、可能性は無限大です。

残念ながら、石花のようにはいきませんね(

 
Urman Ru:

残念ながら、石花は出てきません。

その価値はあるのか?そのインジケーターの中の計算式は?もしかして、何もしなくていいのでは?標準的な フラクタルを 使えばいいのでは?

 
Alexey Viktorov:

その価値はあるのか?そのインジケーターの中の計算式は?もしかして、何もしなくていいんですか?標準的なフラクタルを使えばいいのでは?

もし、標準の Fractal インジケータがフィットするならば、私はこの頑固なインジケータをターミナルに貼り付ける方法を考えるために、一昼夜座っていることはないでしょう。

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

それが何かは、経験豊富なプログラマーである自分の目で確かめてください。
ファイル:
evlpcaVOL.mq4  13 kb
 
Urman Ru:

もし標準のFractalインジケータが動くなら、この頑固なインジケータをどうやってターミナルに挿入するか、一昼夜腰を抜かすことはないだろう。

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

経験豊富なプログラマーであるあなた自身の目で確かめてください。

それこそ、そこに何を書こうとしていたのか、何もつまみ食いできなくなるような経験です。ちょうどチャリに乗ったので、mql4での書き方を思い出したかったのです。建て直すより建てた方がいいという説はご存じだと思います。しかも、より安く、より確実に。

さて、あなたのコードについて2、3のコメントがあります。

ArrayInitialize(a_Fractal, 0);

配列全体をゼロで初期化します。これらの値は、たとえ インジケータ・バッファ 配列に入力されていたとしても、無効化されます。

a_MFI[-1] = (High[-1] - Low[-1])/ a_Volume[-1];

インデックス番号は0より小さくすることはできません。

また、何らかの方法で履歴全体にわたって特定のバーを指定しようとするならば、定数ではなく、変数でインデックスを作成すべきです。

 
Alexey Viktorov:

そこで何を書こうとしたのか、ついつい考えてしまうのは、まさに経験によるものです。ちょうどチャリティーの試合があり、mql4での書き方を思い出したかったのです。建て直すより建てた方がいいという説はご存じだと思います。しかも、より安く、より確実に。

さて、あなたのコードについて2、3のコメントがあります。

配列全体をゼロで初期化します。これらの値は、たとえ インジケータ・バッファ 配列に入力されていたとしても、無効化されます。

インデックス番号は0より小さくすることはできません。

また、履歴の中で何らかの形で特定のバーをマークしようとする場合は、定数ではなく、変数でインデックスを作成する必要があります。

アレクセイさん、こんにちは。いきなり慈悲深い攻撃をされたのならラッキーと思うべきなのでしょうが、残念ながら星が飛ぶのが早すぎて、願い事をする余裕がありませんでした。

a_MFI[i-1] = (High[i-1] - Low[i-1])/a_Volume[i-1] を修正しましたが、花は咲きませんでした。

そうですね、やり方を知っていれば、やり直すより一から作った方がいいに決まっています。

私のアイデアのエッセンス。

GREENバーだけで、HighとLow、そして VolumeとMFIを基準にフラクタルを構築する、すなわちフラクタルF(0)=V(0)>V(1)かつ V(0)>V(2)かつV(0 >V (-1)かつ V(0)>V(-2)かつMFI(0)>MFI(1)かつ MFI(0)>MFI(0)。MFI(2) かつ MFI(0) >MFI(-1) かつ MFI(0)>MFI(-2) であれば、フラクタルF(0) 自体が Close(0) >Open(0) である場合、フラクタルF(0) 終値(0)<始値 (0)であれば フラクタルF(0)は 下向きとなり、このフラクタルで支持線と抵抗線を引く必要があります。そのアイデアをRulangで実装したのがRumusなのですが、Rulangで書いたものがなぜかMT4では読めません、残念です。

Rulangではこんな感じです。違いを感じてみてください。

バリアブル:Lev1($data),Lev2($data);
n=inparam("n",1,10000000,1);

Lev1=ref(Lev1,-1);
Lev2=ref(Lev2,-1);

if h>l then k=(h-l)/v;
if h>l and v>ref(v,-1) and v>ref(v,-2) and v>ref(v,+1) and v><<a href="h,+1"?ref(v,+2) and k>ref(k,-1) and k>ref(k,-2)and k>ref(k,+1) and k>ref(k,+2) then fv=v;
if h>l then f=fv;
x=HV(f,n);
if f=x and c>o then Lev1=h;
if f=x and c<o then Lev2=l;
Lev1;
Lev2....です。

私はMQL4の専門家ではないので、数字や文字で私と似たようなインジケータを探さなければならず、「olyakish_fractals_01」を見つけましたが、別のアイデアがあり、書き換えることにしましたが、残念ながら失敗してしまいました。

突然、別の慈愛の攻撃を感じる場合は、それを見て、私が書き直したものを私にアドバイスを与えることができますし、ちょうどインジケータを書く、神が眠っている間に地獄は関係ありません。

リーザーズ!(笑

ファイル: