初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 673

 
こんにちは、任意の指標のアラートをEAに表示 させるためには、どのようなコードを追加 すればよいですか?

iCustomでアラートを検出するには?

もしかしたら、そのための指標やアドバイザーを既にご存知かもしれませんね?
 
RichLux:

マーチンゲールベースで動作するEAを書いています。

1つの通貨ペアで最大許容損失(pips)に達したときに、すべてのオープンオーダーをクローズさせるにはどうすればよいですか?

もし、本当にお金ではなくpipsで必要な場合は、次の関数を適用してください。

//===============================================================================================
//------------------ Возвращает суммарный профит открытых позиций в пунктах --------------------+
//===============================================================================================
double GetProfitOpenPosInPoint(string symb="0", int type=-1, int mg=-1) {
double p=0, prb=0, prs=0, pr=0;
  if(symb=="0") { symb=Symbol();}
   for(int i=0; i<OrdersTotal(); i++) {
    if(OrderSelect(i, SELECT_BY_POS, MODE_TRADES)) {
     if((OrderSymbol()==symb||symb=="")&&(type<0||OrderType()==type)&&(mg<0||OrderMagicNumber()==mg)) {
       p=MarketInfo(OrderSymbol(), MODE_POINT)*Sign;
        if(OrderType()==OP_BUY) {
          prb+=((MarketInfo(OrderSymbol(), MODE_BID)-OrderOpenPrice())/p);
        }
        if(OrderType()==OP_SELL) {
          prs+=((OrderOpenPrice()-MarketInfo(OrderSymbol(), MODE_ASK))/p);
        }
       pr=prb+prs;
     }
}}
  return(pr);
}
 
greeng2016:
こんにちは、任意の指標のアラートをEAに表示 させるためには、どのようなコードを追加 すればよいですか?

iCustomでアラートを検出するには?

もしかしたら、そのための指標やアドバイザーを既にご存知かもしれませんね?
私の知る限り、アラートウィンドウの出現を追跡することはできません。
 
こんにちは。.ex4ファイルを mt4.exeで開き、すべてのファイルに使用するように設定したいのですが、どうすればよいのでしょうか?Windows General Shell Library "を取り戻すにはどうしたらいいでしょうか? なぜか今、mt4はこのエキスパート(ロボット)を見ることができないのです。
ファイル:
pui_mqhrx2.png  40 kb
 
VSEVPOTOLKI:
こんにちは。.ex4ファイルを mt4.exeで開き、すべてのファイルに使用するように設定したいのですが、どうすればよいのでしょうか?Windows General shell library "を元に戻すにはどうしたらいいですか? なぜかmt4は現在このEA(ロボット)を見ていません。

信じられないでしょうが、みんな!! .ex4ファイルを開きたいのです!!問題は、編集のために一度も開いたことがなく、開けないことです。

編集可能なファイルは.mq4のみ、実行可能なファイルは.ex4です。

 

クライアント端末のイベント

イニシャル

クライアント端末がプログラム(Expert Advisorまたはカスタムインジケータ)をロードし、グローバル変数の初期化を開始した直後に、Initイベントが送信され、OnInit() が利用可能であればそれを使用して処理されます。このイベントは、証券やチャートの期間が変わった後、MetaEditorでプログラムを再コンパイルした後、Expert Advisorやカスタムインディケータの設定ウィンドウからの 入力パラメータを変更した後にも生成されます。Expert Advisor もアカウント変更後、初期化されます。スクリプトの場合、Initイベントは生成されません。


もし、それが「窓の外」でなければ?例えば、Strategy Testerの最適化モードでは、?どこで読めるの?

 
Leo59:

クライアント端末のイベント

イニシャル

クライアント端末がプログラム(Expert Advisorまたはカスタムインジケータ)をロードし、グローバル変数の初期化を開始した直後に、Initイベントが送信され、OnInit() が利用可能であればそれを使用して処理されます。このイベントは、証券やチャートの期間が変わった後、MetaEditorでプログラムを再コンパイルした後、Expert Advisorやカスタムインディケータの設定ウィンドウからの 入力パラメータを変更した後にも生成されます。Expert Advisor もアカウント変更後、初期化されます。スクリプトの場合、Initイベントは生成されません。


もし、それが「窓の外」でなければ?例えば、Strategy Testerの最適化モードでは、?どこで読めるの?

最適化モードでは、新しいパラメータを指定する各パスは、新しいプログラムのスタートに他なりません。OnInit()イベントは、起動後に適宜実行される。
 
Vladimir Karputov:
最適化モードでは、新しいパラメータを指定した各パスは、新しいプログラムの実行にほかなりません。従って、起動後にOnInit()イベントを通過する。
(ウラジミールさん、ありがとうございます!わかりました))。でも、ドキュメントのどこに書いてあるんだろう?init()にPrint, Alert,Commentを 入れると、ログにも画面にも何も表示されません。私たちが知っていることを、どうして確信できるのでしょうか?
 
Leo59:
ウラジミールさん、ありがとうございます!わかりました))。しかし、ドキュメントのどこに書いてあるのでしょうか?init()にPrint, Alert, Commentと入れても、ジャーナルにも画面にも何も書き込まれません。私たちが知っていることを、どうして確信できるのでしょうか?
  • ストラテジーテスターの機能の制限 について。
  • クライアント端末のストラテジーテスターでは、一部機能に制限があります。

    関数 Print() および PrintFormat()

    EAパラメータの最適化時のパフォーマンス向上のため、関数Print()、PrintFormat()は実行されません。ただし、OnInit() ハンドラ内でこれらの関数を使用した場合は例外です。これにより、エラー発生時のエラー原因検索を容易にすることができます。

    Alert()、MessageBox()、PlaySound()、SendFTP、SendMail()、SendNotification()、WebRequest()関数

    Alert()MessageBox()PlaySound()SendFTP()SendMail()、SendNotification()WebRequest() などの「外部」とやり取りする関数は、ストラテジー・テスターでは実行されません。

また、念のため、ヒストリーのデバッグを開始し、OnInit()にブレークポイントを設定してください。

 
Vladimir Karputov:

テスターのログに何かprint()が出ない。どうやるんですか?