[アーカイブ!】どんなルーキーの質問でも、フォーラムを散らかさないように。プロフェッショナルの皆さん、通り過ぎないでください。あなたなしではどこにも行けない - 2. - ページ 315 1...308309310311312313314315316317318319320321322...537 新しいコメント 削除済み 2011.04.06 19:23 #3141 ストラテジーテスターに パス回数の制限があるかどうかご存知ですか?テスターを走らせたところ、テスト開始時のバーの上の左下に、:0/1280(25706)と表示されました。25コペイカを数えたが、これはすべての可能な組み合わせの数である。しかし、彼は、1088/1280(25706)の時点でテストを終えていた。では、彼は1088回しかパスを出していないのですか?最初の2桁の数字にはどんな意味があるのでしょうか? しかも、そのカウントの仕方がおかしい。3つのパラメーターの基準をもう1つ加えると、25個が3倍になるわけではなく、40kozとか出てくるのだ。不具合なのか、どこか間違っているのか。 --- 2011.04.06 19:43 #3142 AndrejFX: ストラテジーテスターにパス回数の制限があるかどうかご存知ですか?テスターを走らせたところ、テスト開始時のバーの上の左下に、:0/1280(25706)と表示されました。25kozを数えました。これは、すべての可能な組み合わせの数です。しかし、彼は、1088/1280(25706)の時点でテストを終えていた。では、彼は1088回しかパスを出していないのですか?最初の2桁の数字にはどんな意味があるのでしょうか? しかも、そのカウントの仕方がおかしい。3つのパラメーターの基準をもう1つ加えると、25個が3倍になるわけではなく、40kozとか出てくるのだ。不具合なのか、どこか間違っているのか。 マニュアルを読めば、個人的に詳しく書いてあります。 Christoff 2011.04.06 20:39 #3143 末尾のコードを整理してください! 直前のローソク足のHighまたはLowレベルから「TrailingStop」距離で、すでに開いているStopLossesを検索する必要があります。Expert Advisor を起動すると、最初のオープントレードでの注文のみ動作します。StopLossがトリガーされ、次の取引が開始されると、StopLoss注文はトレールさ れません。私の理解が正しければ、変数"ORDER_SL"が変更されていないため、注文を変更する条件が満たされていないためでしょうか?もしそうなら、その理由と修正方法を教えてください。 以下は、その末尾のコードです。 int ORDER=OrdersTotal(); OrderSelect(ORDER,SELECT_BY_TICKET,MODE_TRADES); int ORDER_Type=OrderType(); double ORDER_SL=OrderStopLoss(); double Point_High=iHigh(OrderSymbol(),0,2)-TrailingStop*Point; double Point_Low=iLow(OrderSymbol(),0,2)+TrailingStop*Point; if (ORDER_Type==OP_BUY && ORDER_SL<Point_High){ OrderModify(OrderTicket(),OrderOpenPrice(),Point_High,OrderTakeProfit(),0,CLR_NONE); while(!IsTradeAllowed()) Sleep(100); } if (ORDER_Type==OP_SELL && ORDER_SL>Point_Low){ OrderModify(OrderTicket(),OrderOpenPrice(),Point_Low,OrderTakeProfit(),0,CLR_NONE); while(!IsTradeAllowed()) Sleep(100); } 以下はEAの全文です。 ファイル: ____4maotrailing.mq4 3 kb Alexander 2011.04.06 21:47 #3144 このコード int ORDER=OrdersTotal(); OrderSelect(ORDER,SELECT_BY_TICKET,MODE_TRADES); は、perlに入れるべきでしょう。一番面白いのは、動作はするのですが、テスターでは最初の注文の時だけなんです。 Artyom Trishkin 2011.04.06 22:55 #3145 Christoff:トレーリングのヘルプ!!!TrailingStop "の距離で、前のローソク足のHighまたはLowのレベルから、すでに開いているStopLossesをトラブリングする必要があります。Expert Advisor は起動後、最初のオープントレードの注文でのみ機能します。StopLossがトリガーされ、次の取引が開始されると、StopLoss注文はトレールさ れません。私の理解が正しければ、変数 "ORDER_SL "が変更されていないため、注文を変更する条件が満たされていないためでしょうか?そして、もしそうなら、その理由と修正方法を教えてください。以下はトロールコードです。Expert Advisorの全容は以下の通りです。何かをトローリングする前に、それを選択する必要があります。まず、ターミナルのすべてのオープンポジションを ループし、Expert Advisorによってオープンされているものを選択する必要があります。ループの各反復で、必要な順序が選択された場合、ループから直接トロールを呼び出します。この場合のみ、Expert Advisorがオープンしたすべてのポジションがトロールされます。だいたいそうです。void Trailing(string sy, int mn) { int i, err, ORDER_Type, k=OrdersTotal(); double PointX, ORDER_SL, Point_High, Point_Low; if (sy=="0") sy=Symbol(); int dg=MarketInfo(sy, MODE_DIGITS); double pt=MarketInfo(sy, MODE_POINT); if(dg==5 || dg==3) PointX=pt*10; if(dg==4 || dg==2) PointX=pt; for (i=0; i<k; i++) { if (OrderSelect(i, SELECT_BY_POS)) { if (OrderSymbol()!=sy) continue; if (OrderType()>1) continue; if (OrderMagicNumber()!=mn) continue; ORDER_Type=OrderType(); ORDER_SL=OrderStopLoss(); Point_High=iHigh(OrderSymbol(),0,2)-TrailingStop*PointX; Point_Low=iLow(OrderSymbol(),0,2)+TrailingStop*PointX; if (ORDER_Type==OP_BUY) if (NormalizeDouble(Point_High-ORDER_SL,dg)>0) { OrderModify(OrderTicket(),OrderOpenPrice(),Point_High,OrderTakeProfit(),0,CLR_NONE); while(!IsTradeAllowed()) Sleep(100); } if (ORDER_Type==OP_SELL) if (NormalizeDouble(ORDER_SL-Point_Low,dg)>0) { OrderModify(OrderTicket(),OrderOpenPrice(),Point_Low,OrderTakeProfit(),0,CLR_NONE); while(!IsTradeAllowed()) Sleep(100); } } if (!OrderSelect(i, SELECT_BY_POS)) { err=GetLastError(); Print("FUNC Trailing: Ошибка выбора ордера - ", err); break; } } return; } 私はあなたのトロールのコードを見ていないが、それはそのまま(私もそれを変更する必要がありますが - StopLevelを超えないようにチェックを追加、または多分何か他のもの)、私は唯一の順序と正規化のループを追加しましたあなたのトロールのコードでダブル値を 比較すると、などなど......有用なものあなたが望めば、きっと解決しますよ :)ZS.コードを見直したわけではなく、そのまま書いたので、間違いがあるかもしれません。あくまで一例です。さて、ポジションを検索する必要があるそのコードの場所で、この関数を呼び出します。Trailing(Symbol(), Magic); マジック - EAにユニークな整数として設定されたマジックナンバーで、自身の注文を他のEAの注文や、マジックナンバーが全くない手動で開いた注文と区別することができます。 関数呼び出しにSymbol()を残すと、EAが立っているシンボルの位置がターゲットになります。 また、Symbol()の代わりに、ポジションを検索したい通貨ペアの名前に置き換えることもできます。 trave 2011.04.06 23:30 #3146 1台のパソコンでMT4端末間の データ交換を最速で行う方法を教えてください。 Владимир Тезис 2011.04.07 00:32 #3147 trave: 1台のパソコンでMT4端末間のデータ交換を最速で行う方法を教えてください。 トレードをコピー する必要がある場合は、こちらのコピー機をご利用ください。データのやり取りだけなら、DLLを作る必要がある ファイル: kopirowshik.zip 465 kb Роман 2011.04.07 01:48 #3148 drknn: トレードをコピーする場合は、こちらがコピー機です。データのやり取りだけなら、DLL お幸せに...。:-))) Dmitry Tolmachev 2011.04.07 02:33 #3149 Vinin: この掲示板に盗作を書き込むのはやめたほうがいい。追放される道だ。 は比喩的な意味で、このターキーは私が最終決定したものです。 Виктор 2011.04.07 06:23 #3150 Roman.: お幸せに...。:-))) ウラジミール 総集編を投稿しているのだから、この問題には対処しているはずだ。 ターミナルからターミナルへ、メモリやWindows変数などを介して、つまりファイルを介さずに、一つの変数を転送する簡単なバリエーションは見つかりましたか? 最後のバリエーションとして、ある端末のオンライン上に別の端末のClose[0]ラインを描画 するインジケータがあります。ティックチャートで見ると、この比較は非常にわかりやすい。 1...308309310311312313314315316317318319320321322...537 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
しかも、そのカウントの仕方がおかしい。3つのパラメーターの基準をもう1つ加えると、25個が3倍になるわけではなく、40kozとか出てくるのだ。不具合なのか、どこか間違っているのか。
ストラテジーテスターにパス回数の制限があるかどうかご存知ですか?テスターを走らせたところ、テスト開始時のバーの上の左下に、:0/1280(25706)と表示されました。25kozを数えました。これは、すべての可能な組み合わせの数です。しかし、彼は、1088/1280(25706)の時点でテストを終えていた。では、彼は1088回しかパスを出していないのですか?最初の2桁の数字にはどんな意味があるのでしょうか?
しかも、そのカウントの仕方がおかしい。3つのパラメーターの基準をもう1つ加えると、25個が3倍になるわけではなく、40kozとか出てくるのだ。不具合なのか、どこか間違っているのか。
末尾のコードを整理してください!
直前のローソク足のHighまたはLowレベルから「TrailingStop」距離で、すでに開いているStopLossesを検索する必要があります。Expert Advisor を起動すると、最初のオープントレードでの注文のみ動作します。StopLossがトリガーされ、次の取引が開始されると、StopLoss注文はトレールさ れません。私の理解が正しければ、変数"ORDER_SL"が変更されていないため、注文を変更する条件が満たされていないためでしょうか?もしそうなら、その理由と修正方法を教えてください。
以下は、その末尾のコードです。
以下はEAの全文です。
このコード
は、perlに入れるべきでしょう。一番面白いのは、動作はするのですが、テスターでは最初の注文の時だけなんです。
トレーリングのヘルプ!!!
TrailingStop "の距離で、前のローソク足のHighまたはLowのレベルから、すでに開いているStopLossesをトラブリングする必要があります。Expert Advisor は起動後、最初のオープントレードの注文でのみ機能します。StopLossがトリガーされ、次の取引が開始されると、StopLoss注文はトレールさ れません。私の理解が正しければ、変数 "ORDER_SL "が変更されていないため、注文を変更する条件が満たされていないためでしょうか?そして、もしそうなら、その理由と修正方法を教えてください。
以下はトロールコードです。
Expert Advisorの全容は以下の通りです。
何かをトローリングする前に、それを選択する必要があります。まず、ターミナルのすべてのオープンポジションを ループし、Expert Advisorによってオープンされているものを選択する必要があります。ループの各反復で、必要な順序が選択された場合、ループから直接トロールを呼び出します。この場合のみ、Expert Advisorがオープンしたすべてのポジションがトロールされます。
だいたいそうです。
私はあなたのトロールのコードを見ていないが、それはそのまま(私もそれを変更する必要がありますが - StopLevelを超えないようにチェックを追加、または多分何か他のもの)、私は唯一の順序と正規化のループを追加しましたあなたのトロールのコードでダブル値を 比較すると、などなど......有用なものあなたが望めば、きっと解決しますよ :)
ZS.コードを見直したわけではなく、そのまま書いたので、間違いがあるかもしれません。あくまで一例です。
さて、ポジションを検索する必要があるそのコードの場所で、この関数を呼び出します。
Trailing(Symbol(), Magic);
マジック - EAにユニークな整数として設定されたマジックナンバーで、自身の注文を他のEAの注文や、マジックナンバーが全くない手動で開いた注文と区別することができます。関数呼び出しにSymbol()を残すと、EAが立っているシンボルの位置がターゲットになります。
また、Symbol()の代わりに、ポジションを検索したい通貨ペアの名前に置き換えることもできます。
1台のパソコンでMT4端末間のデータ交換を最速で行う方法を教えてください。
トレードをコピー する必要がある場合は、こちらのコピー機をご利用ください。データのやり取りだけなら、DLLを作る必要がある
トレードをコピーする場合は、こちらがコピー機です。データのやり取りだけなら、DLL
お幸せに...。:-)))
この掲示板に盗作を書き込むのはやめたほうがいい。追放される道だ。
は比喩的な意味で、このターキーは私が最終決定したものです。
お幸せに...。:-)))
ターミナルからターミナルへ、メモリやWindows変数などを介して、つまりファイルを介さずに、一つの変数を転送する簡単なバリエーションは見つかりましたか?
最後のバリエーションとして、ある端末のオンライン上に別の端末のClose[0]ラインを描画 するインジケータがあります。ティックチャートで見ると、この比較は非常にわかりやすい。