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

 

皆さん、ライフタイムが設定されている場合、保留中の注文を変更する際、最後の2行に何を書けばいいのか教えてください。(例:6時間~)。

request.type_time = ORDER_TIME_SPECIFIED; // 注文は有効期限まで有効です。
request.expiration = TimeCurrent()+6*3600;// 最新のサーバー時刻 + count*hours

ライフタイムが変わらないのであれば、モディファイ時に一切何も書かなくていいのでしょうか?デフォルトでは勝手に死んでしまいます。

また、その寿命を変更する必要がある場合は?

保留中の注文を変更する

注文の価格水準を修正するための取引要求。7項目は必須項目です。

-アクション

-次

-ねだん

-スレ

-せいちょう

-タイプ_時間

-有効期限

Handbookの中で、私が入り込めない2行です。

タイプタイム

有効期限内の注文の種類。値は ENUM_ORDER_TYPE_TIMEの いずれかである。

満了

保留中の注文の 有効期限(ORDER_TIME_SPECIFIEDタイプの注文の 場合)

エキスパートで、改造する場合、どのように見えるか書いていただければ、理解できます。よろしくお願いします。

この2行は完全に省略することができます。

例えば、request.type_time = ORDER_TIME_DAY; この場合、注文は1日後に削除されます、と書くことができます。

other options: https://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_time

リクエスト .expiration = TimeCurrent()+6*3600;//Last known server time + number of hours*hours(最後のサーバー時間)

は、注文の有効期限を指定します。

https://www.mql5.com/ru/articles/481

Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

初心者のためのヘルプ、お願いします。

Alpari MT5をインストールし、最適化は正常に行われています。つまり、すべてのチャートが描画され、レポートが生成されており、履歴も問題ありません。インスタと同じPCにMT5をインストールし、そこでテスト履歴をダウンロードしたところ、インスタとアルパリの両方でチャートと最適化の 結果が出なくなりました。全てマウントを解除してAlpariのみをインストールしたところ、再び最適化が行われるようになりましたが、ローカルネットワーク内の別のPCにInstaをインストールすると、再び最適化の結果が失われてしまいます。

すべてのケースで同じEA、ログは最良のresaltメッセージで溢れ、ローカルエージェントだけが使用されています。

どなたか、1台のコンピュータまたはローカルネットワーク上で2台以上のmt5を同時に使用している方、またはそのような問題に直面したことのある方はいらっしゃいますか?




 
Crucian:

この2行は全く書かれていないかもしれません。

例えば、request.type_time = ORDER_TIME_DAY; この場合、注文は1日後に削除されます、と書くことができます。

なるほど。というのが、改造するときの感想です。


request.type_time =ORDER_TIME_DAY -と 同じだと思います。

入力 int t = 24;

request.expiration = TimeCurrent()+t*3600;

 
rosomah:

なるほど。というのが、改造するときの感想です。


request.type_time =ORDER_TIME_DAY -と 同じだと思います。

入力 int t = 24;

request.expiration = TimeCurrent()+t*3600;

request.type_timeに 4つのバリアントが使用できることをリンクhttps://www.mql5.com/ru/docs/constants/tradingconstants/orderproperties#enum_order_type_time で示しました。


ORDER_TIME_GTC
まで順番待ちとなります。

ORDER_TIME_DAY
注文は現在の取引日の間のみ有効です。

注文時指定
ご注文は有効期限まで有効です

注文時間指定日
注文は指定日の00:00まで有効です。その時刻が取引時間帯に当てはまらない場合は、最も近い取引時間帯が有効期限となります。

また、既製のCTrade クラス(https://www.mql5.com/ru/docs/standardlibrary/tradeclasses/ctrade)を使用して注文を変更する際の取引要求のコードを提供するhttps://www.mql5.com/ru/articles/481 へのリンクを提供しました。

コードはこうです。

//--- тикет ордера указан только для примера, его нужно получить
   ulong ticket=1234556;
//--- символ также указан для примера, его нужно получить
   string symbol="EURUSD";
//--- количество знаков после запятой
   int    digits=(int)SymbolInfoInteger(symbol,SYMBOL_DIGITS);
//--- значение пункта
   double point=SymbolInfoDouble(symbol,SYMBOL_POINT);
//--- получим цену покупки
   double price=SymbolInfoDouble(symbol,SYMBOL_ASK);
//--- вычислим и нормализуем уровни SL и TP
//--- на самом деле они должны вычисляться в зависимости от типа ордера
   double SL=NormalizeDouble(price-1000*point,digits);
   double TP=NormalizeDouble(price+1000*point,digits);
   //--- зададим срок действия одни сутки
   datetime expiration=TimeTradeServer()+PeriodSeconds(PERIOD_D1); //!!!  
//--- все готово, делаем попытку модифицировать ордер 
   if(!trade.OrderModify(ticket,price,SL,TP,ORDER_TIME_GTC,expiration)) //!!!
     {
      //--- сообщим о неудаче
      Print("Метод OrderModify() потерпел неудачу. Код возврата=",trade.ResultRetcode(),
            ". Описание кода: ",trade.ResultRetcodeDescription());
     }
   else
     {
      Print("Метод OrderModify() выполнен успешно. Код возврата=",trade.ResultRetcode(),
            " (",trade.ResultRetcodeDescription(),")");
     }

MQL5の時間に関する記事はこちら:https://www.mql5.com/ru/articles/599 .

検索を利用し、論文やドキュメントを読む。


Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
Документация по MQL5: Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров
  • www.mql5.com
Стандартные константы, перечисления и структуры / Торговые константы / Свойства ордеров - Документация по MQL5
 

皆さん、こんにちは。

石を投げないでください、しかし、私は何も見つけられませんでした...。

EAにポジションがない...このように書かれています。

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 failed instant buy 1.00 EURUSD at 1.36720 sl: 1.06720 tp: 1.46720 [Invalid request] [無効なリクエスト]です。

и

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 Alert: Request to place Buy order failed - error code:4756

それは何でしょう?

mrequest.action = TRADE_ACTION_DEAL; // 即時実行

mrequest.price = NormalizeDouble(latest_price.ask,_Digits); // 最新のアスク価格

mrequest.sl = NormalizeDouble(latest_price.ask - STP*_Point,_Digits); // ストップロス。

mrequest.tp = NormalizeDouble(latest_price.ask + TKP*_Point,_Digits); // テイクプロフィット

mrequest.symbol = _Symbol; // シンボル

mrequestを使用します。volume = Lot; // 取引するロット数

mrequest.magic = EA_Magic; // マジックナンバー

mrequest.type = ORDER_TYPE_BUY; // 買い注文

mrequest.type_filling = ORDER_FILLING_FOK; //注文の種類- all or nothing

mrequestを使用します。deviation=100; // 現在値からのスリッページ

//注文を送信する

OrderSend(mrequest,mresult)を実行。

Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
Документация по MQL5: Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте
  • www.mql5.com
Стандартные константы, перечисления и структуры / Состояние окружения / Информация об инструменте - Документация по MQL5
 
Armen:

アルメンさん、お願いします。コードを コードフレームに貼り付けて ください。 Ctrl+"5"。 もっといいのは、エディタでSRCボタンを押し、ボックス内に貼り付けて[ok]を押すことです。

はっきりしないんです。:(

 
MetaDriver:

アルメンさん、お願いします。コードを コードフレームに貼り付けて ください。 Ctrl+"5"。 もっといいのは、エディタでSRCボタンを押し、ボックス内に貼り付けて[ok]を押すことです。

はっきりしないんです。:(

すみません、今やり直します...。
 

みなさん、こんにちは。

石を投げないでください、しかし、私は何も見つけられませんでした...。

EAにポジションが ない...これを与える

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 failed instant buy 1.00 EURUSD at 1.36720 sl: 1.06720 tp: 1.46720 [無効なリクエスト]です。

и

2013.12.23 03:00:01 Core 1 2013.12.20 23:30:00 Alert: 買い注文のリクエストに失敗 - エラーコード:4756

それは何でしょう?

         mrequest.action = TRADE_ACTION_DEAL;                                  // немедленное исполнение

         mrequest.price = NormalizeDouble(latest_price.bid,_Digits);           // последняя цена Bid

         mrequest.sl = NormalizeDouble(latest_price.bid + STP*_Point,_Digits); // Stop Loss

         mrequest.tp = NormalizeDouble(latest_price.bid - TKP*_Point,_Digits); // Take Profit

         mrequest.symbol = _Symbol;                                            // символ

         mrequest.volume = Lot;                                                // количество лотов для торговли

         mrequest.magic = EA_Magic;                                            // Magic Number

         mrequest.type = ORDER_TYPE_SELL;                                       // ордер на продажу

         mrequest.type_filling = ORDER_FILLING_FOK;                            // тип исполнения ордера - все или ничего

         mrequest.deviation=100;                                               // проскальзывание от текущей цены

         //--- отсылаем ордер

         OrderSend(mrequest,mresult);

 
Armen:

みなさん、こんにちは。

石を投げないでください、しかし、私は何も見つけられませんでした...。

EAにポジションが ない...これは...

MQL5の取引 操作で説明されているように、ポジション/注文を開くために注文を送る方が良い- それは簡単 です。
 
paladin800:
問題は、既成のフクロウを(少し)作り直さなければならないことです。
問題は、既成のフクロウを(少し)修正する必要があることです...。:(