コーディングの方法は? - ページ 273

 

テイクプロフィット未実行

考えられる理由は2つあります。

まず、テイクプロフィットがオープンプライスに 近すぎて、ブローカーが受け入れることができないと判断された可能性があります。

テイクプロフィットの値を確認するために取引をチェックしてください。

次に、売り取引はAskで終了するため、Askがテイクプロフィットレベルに達していなければなりません。

そのペア、その時間でのブローカーのスプレッドはいくらですか?

そうすると、実際の出口はBid - Spreadになるはずです。

ロバート

 
LuisAY:

水色の丸で囲った部分をどのように読み取るのか知りたいのです。

正しい方向を示すコードサンプルはありますか?

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

Indicator名はコメントではありません。

名前が見えるので

double MaxValue, MinValue;

int WindowNum = WindowFind("Volume"); // 見つからなかったら -1 を返す。

if (WindowNum >= 0)

{

MaxValue = WindowPriceMax(WindowNum);

MinValue = WindowPriceMin(WindowNum);

}

これがお役に立てれば幸いです。

ところで、MT4エディターを開くと、ナビゲーターというウィンドウがあり、MT4の関数の 説明と使い方のサンプルがリストアップされています。

ロバート・ヒル

プロフェッショナルなMT4プログラマー

 

[langtitle=de]テイクプロフィットが実行されない[/langtitle]。

MrPip:
2つの可能な理由があります。

まず、takeprofitはブローカーが受け入れるにはオープンプライスに近すぎると考えられるかもしれません。

テイクプロフィットの値を確認するために取引をチェックしてください。

第二に、売り取引はアスクで終了するので、アスクがテイクプロフィットレベルに達していなければなりません。

そのペア、その時間でのブローカーのスプレッドはいくらですか?

それは、実際の出口がBid - Spreadになる原因となります。

ロバート

[lang=de]迅速なご回答ありがとうございます。

私はECNブローカー(FXOpen)(5digits)を持っています。スプレッドに関してはおっしゃる通りだと思います。しかし、それは102(=(Ask - Bid)*(1/Point)) という一定の値で、ストラテジーテスターを 実行している間ずっと変化しません。なぜですか?ライブシステムでは、スプレッドはほぼ永久に変化しています。さらに、なぜOrderSend Error 130が発生しないのでしょうか?

助けてくれてありがとうございます[/lang].

 
MrPip:
Indicator name はコメントではありません。

名前が見えるので、次のように使うことができます。

double MaxValue, MinValue;

int WindowNum = WindowFind("Volume"); // 見つからなかったら -1 を返す。

if (WindowNum >= 0)

{

MaxValue = WindowPriceMax(WindowNum);

MinValue = WindowPriceMin(WindowNum);

}

これがお役に立てれば幸いです。

ところで、MT4エディターを開くと、ナビゲーターというウィンドウがあり、MT4の関数の説明と使い方のサンプルがリストアップされています。

ロバート・ヒル

プロフェッショナルMT4プログラマー

これはまさに私が探していたものです。ヘルプファイルのテクニカルライターが、この例で示されたような常識を持っていることを期待しています。

もう一つの疑問は、カスタムインジケータの 名前となるコメントやノートが「IndicatorShortName」という名前で、値を保持しているのですが、この値を読み取りたいのです。変数に宣言してこの値を保持させるという方法もありますが、常識的に考えて、"IndicatorShortName "のthaの値を使用する方法があるはずです。

ありがとうございます。

 

私が行ったコーディングです(でも、最近は使っていません)。

連結が観測されるまでは、SUGGESTION ENTRYを与えるべきではありません(だから、それは一種のスマートです - しかし、使用されている単純なロジック)。

質問を言い換えてください -- はっきりしませんが

tiny.cc/imtran

====

これは、私がコーディングをしていることを示すために、掘り出したものです。

このインジケータに1ヶ月を費やしました(自分で作りました)。

これは、白いコメントテキストを使用しています。

指値注文をするための価格レベルを教えてくれます。

もし、あなたがものを読むのが好きなら、METAEDITOR IDEを開いて、mq4コーディングを勉強してください。

色と太さを定義する

チャート上にあるものを描く

ローソクの本数を数える

数式を実行する。

さらに計算とifthenelseを行う

ほとんどのMQ4インディケータはこの形式なので、 >> チャート上に何かを描くことに注意を払う。

----ちょっと暗黙の了解というか、最終的な描画はオートランになりますが、MQ4はこんな感じです ----。

http://tiny.cc/linsay3

http://tiny.cc/linsay2

http://tiny.cc/linsay1

私は自分の開発したものを簡単には渡しません。

- トレードの参考にはならないかもしれませんが(でも、MQ4はコンパイラがそんなに厳しくないので勉強になります)。

WIDという メンバーがいるのですが、彼がどの程度のコーディングの腕前なのかは分かりませんが、もし彼が優秀で機密保持契約を守ってくれるなら、私はインジケータ全体を彼に 渡そうと思います(でも、遊んでみるには良いことですね)。

===

実は、ここで一点だけ

COMMENT -- MQ4でこれほど簡単な関数は他にありません。

この関数は、PRINT ("oooh, forex bluffer, good time to enter at price" ; perfectpriceVariable) に非常によく似ています。

すなわち、それはテキストアドバイザー、トリガー、任意の変数値を表示するなどとして使用することができます

お気に入りのインジケータに追加して、表示・非表示やトリガーを与えることができます。

-- 数時間前との比較など === これらのコーディングは全てCHILDPLAYです。

ただし、お気に入りのインジケータを手に入れたら、まずそのインジケータを裏表から理解する必要があります。

例えば、どのようなシグナルが欲しいのか、変数がどのように変化するのか、など。

コメント(...............)を入れる前に、そのインジケータを理解する必要があります。

もっと多くの人が、泣き言を言うより、コーディングが好きであって欲しいと願っています -- これを書くことで

==== 例えば、"IndicatorShortName "がMQ4の変数だとします。

と書いておけば、コメント(" \n", "このローソク足でのこの変数の約値は", IndicatorShortName)としてどこかに書けるはずです。

とはいえ、MQ4のインジケータ全体で "IndicatorShortName "を検索しないと、これは何なのかわからない!変数なのか、本当にインジケータに現れるのか、外部呼び出しなのか -- 外部呼び出しは難しいかも、OOPっぽく見せるためにそういうことを書く人がいる。

 
coollex:
[lang=de]素早い返信ありがとうございました。

私はECNブローカー(FXOpen)(5digits)を持っています。スプレッドに関してはおっしゃるとおりだと思います。しかし、それは102(=(Ask - Bid)*(1/Point)) という一定の値で、ストラテジーテスターを実行している間ずっと変化しません。なぜですか?ライブシステムでは、スプレッドはほぼ永久に変化しています。さらに、なぜOrderSend Error 130が発生しないのでしょうか?

助けてくれてありがとう[/lang].

それは、理由1が問題ではないことを意味しています。

理由2でTPは1.44743で、スプレッドは102ポイントです。つまり、取引を終了するには、AskがTPに達したときにBidが1.44641である必要があるということです。あなたのチャート画像から、それは起こらなかったように見えます。

チャート上のバーはビッドから作成されることを忘れないでください。

ロバート

 

iCustom、インジケーター、EAで注文を出す場合

皆さん、こんにちは。

私はMLプログラミングの初心者です。

私はIndiで全ての通貨のパワーを決定する関数を持って います。私がしたいことは、利益の出るペアの注文を出すことです。そのために、最大パワーの通貨を決定する「for」ループと、最弱の通貨を決定する別の「for」ループを持っています。

私は、後で有益なペアの注文を開くためにEAで使用することができるインディで何をすべきかとして立ち往生している。

以下の関数コードを確認してください。

allcurr = 全ての通貨

cpow = 通貨のパワー

void pro (int allcurr, double cpow)

{

for (allcurr=0; allcurr<CurrencyCount; allcurr++)

{

if (cpow > 150 || cpow >160)

{

for (allcurr=0; allcurr<CurrencyCount; allcurr++)

{

if (cpow > 40 || cpow > 0)

{

I AM STUCK HERE

} // end for weak if

} // end for weak

} // end for max if

} // end for max

} // end void pro
 

iCustom、インジケーター、EAで注文を出す場合

皆さん、こんにちは。

私はMLプログラミングの初心者です。

そのために、私は最大パワーの通貨を決定する'for'ループと、最弱の通貨を決定する別の'for'ループを持っています。

私は、後で有益なペアの注文を開くためにEAで使用することができるインディで何をすべきかとして立ち往生している....

以下の関数コードを確認してください。

allcurr = 全ての通貨

cpow = ある通貨のパワー

void pro (int allcurr, double cpow)

{

for (allcurr=0; allcurr<CurrencyRepeat; allcurr++)

{

if (cpow > 150 || cpow >160)

{

for (allcurr=0; allcurr<CurrencyRepeat; allcurr++)

{

if (cpow > 40 || cpow > 0)

{

I AM STUCK HERE

} // end for weak if

} // end for weak

} // end for max if

} // end for max

} // end void pro
 

OrderCommentの変更?

こんにちは。

注文が作成された後、OrderCommentを変更する方法はないでしょうか?

私は、到達しそうなキーポイントに保留中の注文を 作成するEAを持っていますが、時々、チャート上の望ましくない速い動きのために、それらの注文はキャンセル/削除されなければなりません、したがって、各キーポイント注文が何度もオープンされ、キャンセル/削除される可能性があるため、各注文の識別にチケット番号を使うことは不可能です。しかし、EAを実行するコンピュータが故障したり、インターネット接続に失敗したりすると、キーポイント注文の識別が台無しになるため、EAが前回の実行を終了せずに再起動した後に生じる混乱によるエラーを避けるために、OrderCommentを変更することが有用となります。

非常にわかりにくいですよね?

追伸:マジックナンバーはEAが作成した注文を識別するために使用しているので、その番号で個々の注文を識別することはできません。

もし、OrderCommentsを変更する方法があれば、どなたか教えていただけると幸いです。

よろしくお願いします。

 

しかし、インジケータのバッファを「積み重ねる」ときに、このバッファにどのような値を入れるかを考えなければなりません。

第二に、このコードの部分を見てください。

if (cpow > 150 || cpow >160)

if (cpow > 40 || cpow > 0)

[/CODE]

this same effect will be when You change it for:

[CODE]

if (cpow > 150)

if (cpow > 0)

edit: どんな効果があるのかわかりませんが、配列を使ってみてください。

よろしくお願いします。

MQLで大きな経験を持つので、コンピュータのポーランド人学生はあなたのためにコードを書くことができます。

メールによる引用: gaa1(at)poczta(dot)fm

安い、良い、速い&&とプロフェッショナル。