どんな新人の質問でも、フォーラムを乱雑にしないように。プロフェッショナルは、通り過ぎないでください。Nowhere without you - 6. - ページ 560 1...553554555556557558559560561562563564565566567...1178 新しいコメント Vladislav Andruschenko 2014.03.25 11:19 #5591 Leo59: Expert Advisorのdeinit()で98496行をログファイル(*.csv)に書き込んでいる。 テスターでエキスパートが終了した時のアンロードが違う理由。 - テスト終了時にアンロードする場合は、すべて正常です(98496行)。 - の場合、「停止」ボタンでアンロードした場合、約10%のデータのみとなります。 何が問題なのか、誰にもわからない。 ユーザー自身がExpert Advisorをアンロードした場合、Expert Advisorを強制終了するようにしました。 は、スタート時に直接記録した方が良い。 Vladislav Andruschenko 2014.03.25 11:20 #5592 Roman.: みんな、この警告をどう解釈する? ありがとうございます。 関数は、変数に設定する必要があります 例えば、bool closee=OrderClose............................とする。 OrderSelect の戻り値をチェック する必要があります。 OrderDelete の戻り 値をチェックする必要があります。 OrderSend の戻り 値をチェックする必要があります。 OrderCloseの戻り 値をチェックする必要があります。 OrderModify の戻り値をチェックする必要があります。 このような警告を避けるには、変数への復帰を明示的に指定する必要があります。 は、例えばこんな感じです。 select1=OrderSelect..........................................2 bool delete1=OrderDelete............. bool close1=OrderClose............... bool modify1=OrderModify................................ int send1=OrderSend..................................5 Alexandr Mordashov 2014.03.25 11:25 #5593 こんにちは。OBJ_TEXT オブジェクトのグラフ上で幅/高さを定義または計算することが可能かどうか教えてください。 Vladislav Andruschenko 2014.03.25 11:26 #5594 alxm: こんにちは。OBJ_TEXTオブジェクトのグラフ上で幅/高さを定義または計算することが可能かどうか教えてください。 文字数、+フォントサイズとかの 計算方法は? Vladislav Andruschenko 2014.03.25 11:28 #5595 cipsi: もし分かっていれば、一番最初のオープンオーダーのOrderOpenPriceを見つける方法。 1.Symbol 2.BUYオーダーは1つから多数まで開けることができる 3.マジック 4.注文の違い、おそらくチケットによるもの - 最小のチケットを見つける。 double PriceOpenFirstPos(string sy="", int op=-1, int mn=-1) { datetime t==0; double r=0; int i, 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==0) { t=OrderOpenTime(); r=OrderOpenPrice(); } } } } } } } return(r); } Vladislav Andruschenko 2014.03.25 11:31 #5596 psdmaster: EA作成に関する記事を読む : https://book.mql4.com/ru/samples/expert あるバーで取引を開始し、次のバーが表示されたときに閉じる方法を教えてください。 1.取引を開始するときは、バーの時間を忘れないようにする このように スタート地点の外 int timeopen; を、トレードをオープンにしているスタート地点に置く。 timeopen=Time[0]; このように閉じる。 if(timeopen!= Time[0]) OrderClose............ Vladislav Andruschenko 2014.03.25 11:32 #5597 Zolotai: 教えてください。ループを使わずに、指定したシンボルの未決済注文の数を調べるにはどうしたらよいですか? サイクルがないとどうしようもない。 forexman77 2014.03.25 12:09 #5598 親愛なる、あなたの助けが必要です。 Expert Advisorをインジケータで最適化しているのですが、インジケータのコードは以下の通りです。 最適化が遅い、新しいバーで インジケータを再計算するコードをEAで作ったが、これはかなり適していない。 インジケーターのコードを見て、再計算を速くするために何ができるかを考えてみてください。 #property indicator_separate_window #property indicator_buffers 4 #property indicator_color1 Lime #property indicator_color2 Yellow #property indicator_color3 Red #property indicator_color4 Aqua //--- input parameters extern int Period_MA_1=14; extern int p2 =7; extern int p3 =5; extern int p4 =3; extern int Limit=70; //--- buffers double ExtMapBuffer1[]; double ExtMapBuffer2[]; double ExtMapBuffer3[]; double ExtMapBuffer4[]; //+------------------------------------------------------------------+ //| Custom indicator initialization function | //+------------------------------------------------------------------+ int init() { //---- indicators SetIndexStyle(0,DRAW_NONE); SetIndexBuffer(0,ExtMapBuffer1); SetIndexStyle(1,DRAW_LINE); SetIndexBuffer(1,ExtMapBuffer2); SetIndexStyle(2,DRAW_LINE); SetIndexBuffer(2,ExtMapBuffer3); SetIndexStyle(3,DRAW_LINE); SetIndexBuffer(3,ExtMapBuffer4); IndicatorDigits(Digits+1); //---- return(0); } //+------------------------------------------------------------------+ //| Custom indicator deinitialization function | //+------------------------------------------------------------------+ int deinit() { return(0); } //+------------------------------------------------------------------+ //| Custom indicator iteration function | //+------------------------------------------------------------------+ int start() { int counted_bars=IndicatorCounted(), i,limit1,limit2,limit3,limit4; double impuls; if(counted_bars<0) return(-1); if(counted_bars>0) counted_bars--; limit1=Bars-counted_bars-1; if (limit1>Limit && Limit>0) limit1=Limit; limit2=limit1; limit3=limit2; limit4=limit3; if(limit1>0) { limit1=500-Period_MA_1-1; limit2=limit1-p2; limit3=limit2-p3; limit4=limit3-p4; } for(i=limit1;i>=0;i--) {ExtMapBuffer1[i]=Close[i]-Close[i+Period_MA_1];} for(i=limit2;i>=0;i--) {ExtMapBuffer2[i]=iMAOnArray(ExtMapBuffer1, 0, p2, 0, MODE_EMA,i);} for(i=limit3;i>=0;i--) {ExtMapBuffer3[i]=iMAOnArray(ExtMapBuffer2, 0, p3, 0, MODE_EMA,i);} for(i=limit4;i>=0;i--) {ExtMapBuffer4[i]=iMAOnArray(ExtMapBuffer3, 0, p4, 0, MODE_EMA,i);} return(0); } Михаил 2014.03.25 12:32 #5599 mt4のクラスについて、どこで読むことができますか? ヘルプを読みましたが、このセリフの意味が説明されていません。 CArray::CArray(void) : m_step_resize(16), m_data_total(0), m_data_max(0), m_sort_mode(-1) { } 変数の初期化について教えて ください。 Роман 2014.03.25 13:17 #5600 Vladon: 関数は、変数に設定する必要があります。 例)bool closee=OrderClose...................................... OrderSelect の戻り値をチェック する必要があります。 OrderDelete の戻り 値をチェックする必要があります。 OrderSend の戻り 値をチェックする必要があります。 OrderCloseの戻り 値をチェックする必要があります。 OrderModify の戻り値をチェックする必要があります。 このような警告を避けるには、変数への復帰を明示的に指定する必要があります。 このように select1=OrderSelect.........................................2 bool delete1=OrderDelete............. bool close1=OrderClose............... bool modify1=OrderModify................................ int send1=OrderSend..................................5 ありがとうございます。何の警告もなく動作しました。 ハンドブックにある例を参考にしてください:-) オーダー削除 以前に発注した保留中の注文を削除します。 bool OrderDelete() int チケット, //注文番号 color arrow_color // 色 ); パラメータ チケット [注文の固有シリアル番号。 矢印の色 [in] チャート上の矢印の色。このパラメータがない場合、または値がCLR_NONEの場合は、チャートに矢印は表示されません。 戻り値 関数が正常に終了した場合はtrueを、エラーが発生した場合はfalseを返す。エラー 情報を取得するには、GetLastError() を呼び出します。 例 if(Ask>var1) { OrderDelete(order_ticket)。 return(0) です。 } MQL4、MQL5に関する初心者からの質問、アルゴリズムやコードに関するヘルプ、ディスカッションなど。 Any rookie question, so [ARCHIVE] フォーラムを散らかさないように、どんなルーキーでも質問してください。プロフェッショナルは、通り過ぎないでください。Nowhere without you 1...553554555556557558559560561562563564565566567...1178 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
Expert Advisorのdeinit()で98496行をログファイル(*.csv)に書き込んでいる。
テスターでエキスパートが終了した時のアンロードが違う理由。
- テスト終了時にアンロードする場合は、すべて正常です(98496行)。
- の場合、「停止」ボタンでアンロードした場合、約10%のデータのみとなります。
何が問題なのか、誰にもわからない。
ユーザー自身がExpert Advisorをアンロードした場合、Expert Advisorを強制終了するようにしました。
は、スタート時に直接記録した方が良い。
みんな、この警告をどう解釈する?
ありがとうございます。
関数は、変数に設定する必要があります
例えば、bool closee=OrderClose............................とする。
このような警告を避けるには、変数への復帰を明示的に指定する必要があります。
は、例えばこんな感じです。
こんにちは。OBJ_TEXTオブジェクトのグラフ上で幅/高さを定義または計算することが可能かどうか教えてください。
文字数、+フォントサイズとかの 計算方法は?
もし分かっていれば、一番最初のオープンオーダーのOrderOpenPriceを見つける方法。
1.Symbol
2.BUYオーダーは1つから多数まで開けることができる
3.マジック
4.注文の違い、おそらくチケットによるもの - 最小のチケットを見つける。
EA作成に関する記事を読む : https://book.mql4.com/ru/samples/expert
あるバーで取引を開始し、次のバーが表示されたときに閉じる方法を教えてください。
1.取引を開始するときは、バーの時間を忘れないようにする
このように
スタート地点の外
int timeopen;
を、トレードをオープンにしているスタート地点に置く。
このように閉じる。
教えてください。ループを使わずに、指定したシンボルの未決済注文の数を調べるにはどうしたらよいですか?
サイクルがないとどうしようもない。
親愛なる、あなたの助けが必要です。
Expert Advisorをインジケータで最適化しているのですが、インジケータのコードは以下の通りです。
最適化が遅い、新しいバーで インジケータを再計算するコードをEAで作ったが、これはかなり適していない。
インジケーターのコードを見て、再計算を速くするために何ができるかを考えてみてください。
mt4のクラスについて、どこで読むことができますか?
ヘルプを読みましたが、このセリフの意味が説明されていません。
変数の初期化について教えて ください。
関数は、変数に設定する必要があります。
例)bool closee=OrderClose......................................
このような警告を避けるには、変数への復帰を明示的に指定する必要があります。
このように
ありがとうございます。何の警告もなく動作しました。
ハンドブックにある例を参考にしてください:-)
オーダー削除
以前に発注した保留中の注文を削除します。
bool OrderDelete()
int チケット, //注文番号
color arrow_color // 色
);
パラメータ
チケット
[注文の固有シリアル番号。
矢印の色
[in] チャート上の矢印の色。このパラメータがない場合、または値がCLR_NONEの場合は、チャートに矢印は表示されません。
戻り値
関数が正常に終了した場合はtrueを、エラーが発生した場合はfalseを返す。エラー 情報を取得するには、GetLastError() を呼び出します。
例
if(Ask>var1)
{
OrderDelete(order_ticket)。
return(0) です。
}