そして、それを「漫画」にしよう(多通貨化) - ページ 4

 
rid писал(а)>>

この中から選んでください

関数PriceOpenLastPos()です。
この関数は、最後に建てたポジションの建値を返します。考慮すべき位置の選択は、外部パラメータで指定する。
sy - 市場商品の名前。このパラメータを設定すると、この関数は指定されたシンボルの位置のみを考慮するようになります。デフォルト値である「」は、あらゆる市場商品を意味する。NULL 値は、現在の測定器を意味する。
op - 貿易業務、ポジションタイプ。有効な値:OP_BUY、OP_SELL、または-1。初期値-1 は任意の位置を意味する。
mn - 位置の識別子,MagicNumber.デフォルト値 -1 は、任意の識別子を意味する。

https://forum.mql4.com/ru/11287/page24

ありがとうございます!やってみます!この機能はインジケーターでも使えるのでしょうか?

 

わからないんです。結局のところ、インジケータはポジションをオープンしない。なぜ、この指標はオープンポジションやクローズドポジション の価格を必要とするのでしょうか?

それ以外の仕事もある。

インジケーターでも使えると思います。

 
rid писал(а)>>

わからないんです。結局のところ、インジケータはポジションをオープンしない。なぜ、この指標はオープンポジションやクローズドポジションの価格を必要とするのでしょうか?

それ以外の仕事もある。

インジケーターでも使えると思います。

この関数をインジケータに正しく挿入する方法をご存知ですか?

コンパイル時に、最初のブラケットと次の変数でエディタがエラーを発生させます。

double PriceOpenLastPos( string sy="", int op=-1, int mn=-1) {.
datetime t;
double r=0;
int k=OrdersTotal();

if (sy=="0") sy=Symbol();
for (i=0; i<k; i++) {.
if (OrderSelect(i, SELECT_BY_POS, MODE_TRADES)){
if (OrderSymbol()==sy || sy=="){
if (OrderType()==OP_BUY || OrderType()==OP_SELL) {。
if (op<0 || OrderType()==op) { }.
if (mn<0 || OrderMagicNumber()==mn) {.
if (t<OrderOpenTime()){
t=OrderOpenTime()。
r=OrderOpenPrice()。
}
}
}
}
}
}
}
return(r)です。
}
}

'(' - 関数定義 unexpected D:\MT4﹑﹑Astrea.mq4 (627, 24)
'sy' - 変数が定義されていません D:MT4experts Indicators Indicators Astrea.mq4 (632, 7)
など

 

わかりにくいですね。私はインデックスの専門家ではありません。

また、なぜ注文開始 価格をインジケータに考慮する必要があるのか理解できません。

本当にこの指標が必要なのでしょうか?

もしかしたら、注文を考慮した別のEAに必要な機能を実装する方が簡単かもしれませんね。

 
rid писал(а)>>

わかりにくいですね。私はインデックスの専門家ではありません。

また、なぜ注文開始価格をインジケータに考慮する必要があるのか理解できません。

本当にこの指標が必要なのでしょうか?

もしかしたら、注文を考慮する別のEAに必要な機能を実装する方が簡単なのでは?

売買シグナルの生成ロジックをインジケータに実装し、生成されたシグナルをグローバル変数を通じてEAに送り、注文をオープン/クローズさせるようにしています。

私はある決定を下すために注文の建値が必要で、それがこの問題を解決しようとしている理由です。ダイナミックインジケーターを使用していますが、デモやテスターでビジュアライゼーションモードでしかデバッグできません。

 

今、最初に出会ったターキー(ATR)にこの関数を挿入したところ、すべて準拠しました。

(当然のように警告1回のみ)。

また、この関数はコードのどの部分に挿入するのでしょうか?コードの一番最後、START関数の外側に挿入してください。

そして、START関数でそれを呼び出して、あなたの

 
rid писал(а)>>
この関数を最初に利用できるターキー(ATR)に貼り付けただけで、すべて準拠した。

どのように挿入されたのですか?上記のテキストはすべて1対1、またはvoidのサブ関数として?

 
一対一で
 
rid писал(а)>>
>> 1対1です。

不思議なことに、コンパイルするとエラーが出るんです。

 
rid писал(а)>>

今、最初に出会ったターキー(ATR)にこの関数を挿入したところ、すべて準拠しました。

(当然のように警告1回のみ)。

また、この関数はコードのどの部分に挿入するのでしょうか?コードの一番最後、START関数の外側に挿入してください。

START関数で呼び出して計算する必要があります。

やった!スタート機能の外に挿入したら、コンパイルが通った。

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