初心者の方からの質問 MQL5 MT5 MetaTrader 5 - ページ 58 1...515253545556575859606162636465...1503 新しいコメント Denis Kirichenko 2012.10.27 10:20 #571 teetrinker: Myexpert.Time(10) は、チャート上の10本目のバーの時刻を返すべきでしょうか?また、どのように書けば正しいのか?ありがとうございました。理論的にはそうなのですが...。Time メソッドは、ドキュメントによると、指定されたインデックスでTime要素の値を取得 します。これは CExpertBase クラスのメソッドで 、 CExpertと 取引戦略のすべての補助クラスの基底クラスです。 Dearsergeev tells you correctly...Time()メソッドがEAの中でどのような役割を担っているかは、Debuggerで確認するのがベストです。 Dimka-novitsek 2012.10.27 17:16 #572 イェデルキンさん、ありがとうございました !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!そしてEnumToString(timeframe)、かっこいい関数ですね!!!!そして私はバラン!!!!!!! Dimka-novitsek 2012.10.28 17:31 #573 教えてください、こんな機能があります。 bool PositionModify( ulong PositionTicket, double price, double stoploss, double takeprofit, datetime expiration, color arrow_color=CLR_NONE) { MqlTradeRequest request = {0}; MqlTradeResult result = {0}; request.action= TRADE_ACTION_SLTP; request.order= PositionTicket; request.price= price; request.symbol= Symbol(); request.sl= stoploss; request.tp= takeprofit; return (OrderSend( request, result )); }この関数は、 ,,側,,- request.symbol=Symbol(); なぜSymbol()なのでしょうか?ここで、TPとSLを設定したシンボルを転送する必要があります。では、バカみたいに文字列 request.symbol=Symbol(); を削除すればいいのでしょうか? Aleksandr Prishenko 2012.10.29 14:55 #574 開いているメイン注文の ストップレベルでロールオーバー注文 を設定し、メイン注文が TPで閉じられたらそれを削除する方法を教えてください。コードに両方の命令を一度に設定しました。 // основной ордер +++++++++++++++++++++++++++++++++++++++ { request.action = TRADE_ACTION_PENDING; request.magic=magic_number; // ORDER_MAGIC request.symbol = "EURUSD"; request.volume = NormalizeDouble(volume()/1,2); request.price=NormalizeDouble(Ask+StopLevel*_Point,_Digits); request.sl = NormalizeDouble(request.price - SL*_Point,_Digits); request.tp = NormalizeDouble(request.price + TP*_Point,_Digits); request.deviation=0; request.type=ORDER_TYPE_BUY_STOP; request.type_filling=ORDER_FILLING_FOK; { OrderSend(request,result); if(result.retcode==10009 || result.retcode==10008) Print("Установлен ордер BuyStop"); else { Print(ResultRetcodeDescription(result.retcode)); } } // переворотный ордер +++++++++++++++++++++++++++++++++++++++ request.action = TRADE_ACTION_PENDING; request.magic=magic_number1; // ORDER_MAGIC request.symbol = "EURUSD"; request.volume = NormalizeDouble(volume()/2,2); request.price=NormalizeDouble(Bid-(SL-45) *_Point,_Digits); request.sl = NormalizeDouble(request.price + SL*_Point,_Digits); request.tp = NormalizeDouble(request.price - (TP-900)*_Point,_Digits); request.deviation=0; request.type=ORDER_TYPE_SELL_STOP; request.type_filling=ORDER_FILLING_FOK; { OrderSend(request,result); if(result.retcode==10009 || result.retcode==10008) Print("Установлен ордер SellStop"); else { Print(ResultRetcodeDescription(result.retcode)); return; } } } } }メイン注文はTPでオープンしてクローズし、ロールオーバー注文はハングアップする。主注文がストップで決済されていれば問題ないのですが......)。閉じるのに最適な機能は何ですか?そのように保留中の注文を調べて削除したほうがいいのでしょうか? { request.action = TRADE_ACTION_REMOVE; request.magic=magic_number1; // ORDER_MAGIC request.symbol = "EURUSD"; request.volume = 0; request.price=0; request.sl = 0; request.tp =0; request.deviation=0; request.type=0; request.type_filling=0; { OrderSend(request,result); それとも、もっと簡単な方法があるのでしょうか? Yedelkin 2012.10.30 06:54 #575 Crucian: メイン注文がTPでオープン&クローズし、ロールオーバー注文がハングする。主注文がストップで決済されていれば問題はなかったのですが......)。どのような機能で閉じるのが良いのでしょうか? 保留注文を調べて、そのように削除した方が良いのでしょうか?それとも、もっと簡単な方法があるのでしょうか? そこで、あるイベントが発生したとき(特に、オープンポジションでTP注文がトリガーされたとき)、SL注文でもTP注文でもない保留中の注文を 具体的にどのように削除 するかが問題となります。 現在、このような注文は、該当する「保留中の注文の削除」要求を送信することによってのみ、強制的に削除することができます。そこで、端末側で特定のイベントの発生を監視し、リクエストを送信する必要があります。 しかし、あなたのバリアントとは異なり、リクエストで指定するフィールドは2つだけで、そのうちの1つはrequestです。の注文を受け付けて います。 おっしゃるような状況では、OCO注文("One Cansels Other(s)")が役に立つでしょう。TPレベルでは、オープンポジションの大きさで注文を出し、SLレベルでは、ポジションを「反転」させるのに必要な大きさで注文を出すことになるでしょう。これらのOCO注文のうち1つがトリガーされると、サーバー側で2つ目の注文が自動的に削除されます。しかし、このフォーラムの開催期間中、プラットフォームの開発者は、OCO注文を含む追加注文の種類を導入しないことを断固として表明しています。 A100 2012.10.30 08:08 #576 Yedelkin: しかし、このフォーラムが存在する限り、プラットフォーム開発者は、OCO注文を含む追加注文タイプの導入に断固として同意していません。 また、プログラム的に実装できるのに、なぜ導入するのか? Yedelkin 2012.10.30 08:12 #577 A100: プログラムでできるのに、なぜ入力するのか? フォーラム検索でラテン語とキリル文字で「OCO」と入力して読んでみてください。 A100 2012.10.30 08:15 #578 Yedelkin: フォーラム検索でラテン語とキリル文字で「OCO」と入力して読んでみてください。 OCOは独立した令状ではないので、入力する必要はありません Yedelkin 2012.10.30 08:19 #579 A100: CCAは独立した令状ではないので、導入する必要はない なるほど。だから、何も読んでいないんですね。しかし、あなたは自分の意見を伝えようとします。OK、あなたの意見は受け入れられます:このタイプの注文は 必要ありません 。 A100 2012.10.30 08:24 #580 Yedelkin: このような注文は 必要ありません。 プラットフォームによっては、1つ(場合によっては2つ)のCCA注文をバインドする機能があります。MT4/5では、リンクした注文の 連鎖をプログラムで実装しており(時には非常に複雑)、こちらの方が便利だと思います。 1...515253545556575859606162636465...1503 新しいコメント 理由: キャンセル 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
Myexpert.Time(10) は、チャート上の10本目のバーの時刻を返すべきでしょうか?また、どのように書けば正しいのか?
ありがとうございました。
理論的にはそうなのですが...。
Time メソッドは、ドキュメントによると、指定されたインデックスでTime要素の値を取得 します。これは CExpertBase クラスのメソッドで 、 CExpertと 取引戦略のすべての補助クラスの基底クラスです。
Dearsergeev tells you correctly...Time()メソッドがEAの中でどのような役割を担っているかは、Debuggerで確認するのがベストです。
イェデルキンさん、ありがとうございました !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
そしてEnumToString(timeframe)、かっこいい関数ですね!!!!そして私はバラン!!!!!!!
この関数は、 ,,側,,- request.symbol=Symbol(); なぜSymbol()なのでしょうか?ここで、TPとSLを設定したシンボルを転送する必要があります。では、バカみたいに文字列 request.symbol=Symbol(); を削除すればいいのでしょうか?
開いているメイン注文の ストップレベルでロールオーバー注文 を設定し、メイン注文が TPで閉じられたらそれを削除する方法を教えてください。
コードに両方の命令を一度に設定しました。
メイン注文はTPでオープンしてクローズし、ロールオーバー注文はハングアップする。主注文がストップで決済されていれば問題ないのですが......)。閉じるのに最適な機能は何ですか?
そのように保留中の注文を調べて削除したほうがいいのでしょうか?
それとも、もっと簡単な方法があるのでしょうか?そこで、あるイベントが発生したとき(特に、オープンポジションでTP注文がトリガーされたとき)、SL注文でもTP注文でもない保留中の注文を 具体的にどのように削除 するかが問題となります。
現在、このような注文は、該当する「保留中の注文の削除」要求を送信することによってのみ、強制的に削除することができます。そこで、端末側で特定のイベントの発生を監視し、リクエストを送信する必要があります。 しかし、あなたのバリアントとは異なり、リクエストで指定するフィールドは2つだけで、そのうちの1つはrequestです。の注文を受け付けて います。
おっしゃるような状況では、OCO注文("One Cansels Other(s)")が役に立つでしょう。TPレベルでは、オープンポジションの大きさで注文を出し、SLレベルでは、ポジションを「反転」させるのに必要な大きさで注文を出すことになるでしょう。これらのOCO注文のうち1つがトリガーされると、サーバー側で2つ目の注文が自動的に削除されます。しかし、このフォーラムの開催期間中、プラットフォームの開発者は、OCO注文を含む追加注文の種類を導入しないことを断固として表明しています。
しかし、このフォーラムが存在する限り、プラットフォーム開発者は、OCO注文を含む追加注文タイプの導入に断固として同意していません。
フォーラム検索でラテン語とキリル文字で「OCO」と入力して読んでみてください。
このような注文は 必要ありません。