mt4 (MetaTrader4)使い倒シストレ

メタトレーダー、自作インジケータ、自作EAで完全自動売買。使えるものは何でも使え。
インジケーター、EA(自動売買システム)製作のご依頼はこちらへ
Googolyen FX Factory
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


にほんブログ村 為替ブログ FX システムトレード派へ
--/--/--(--) --:--:-- | スポンサー広告 | Trackback(-) | Comment(-)
Execution errors
いくつかのトレード操作(OrderSend()、OrderClose()、OrderCloseBy()、OrderDelete()、OrderDelete()、OrderModify関数)は失敗する可能性があり、その時エラーとなり、負のチケット番号かFALSEを返す。
失敗した理由を特定するには、GetLastError()関数を呼び出す。
全てのエラーは特別な方法によって処理されなければならない。
最も普通の提案を以下に示す。

エラーコードはトレードサーバから返される。
定数 説明
ERR_NO_ERROR 0 トレード処理成功
ERR_NO_RESULT 1 OrderModify()はすでに設定された値と同じ値を設定しようと試みる。一つ以上の値は変更されるべきであり、修正行為は繰り返すことができる。
ERR_COMMON_ERROR 2 共通エラー。トレードは原因が明確になるまでストップする。もしかするとOSやクライアント端末の再起動が必要。
ERR_INVALID_TRADE_PARAMETERS 3 無効なトレード変数がトレード関数に渡された。例えば不正な通貨、未知のトレード操作子、負のスリッページ、存在しないチケット番号、等。プログラムのロジックを変更しなければならない。
ERR_SERVER_BUSY 4 トレードサーバがビジー状態。ある程度(数分以上)時間が経った後に再度試みる。
ERR_OLD_VERSION 5 クライアント端末が古いバージョン。最新のクライアント端末をインストールしなければならない。
ERR_NO_CONNECTION 6 トレードサーバと接続できない。接続の切断を確認する(例えばIsConnected()関数を使う)必要があり、数秒(5秒以上)後、再接続を試みる。
ERR_TOO_FREQUENT_REQUESTS 8 要求が多すぎる。要求の頻度を少なくするように、プログラムロジックを変更しなければならない。
ERR_ACCOUNT_DISABLED 64 アカウント無効。全てのトレードを停止すべき。
ERR_INVALID_ACCOUNT 65 無効なアカウント。全てのトレードを停止すべき。
ERR_TRADE_TIMEOUT 128 トレード時間切れが迫っている。エントリー前(遅くとも1分前)にトレードが成功していないか(新しいポジションが開いていない、存在する注文が修正されていない、削除されていない。ポジションが閉じていない)を確認する必要がある。
ERR_INVALID_PRICE 129 無効な価格値か正規化されていない価格。5秒後、RefreshRates()関数を用いてデータの更新をした後、再度試みる。もし、エラーが無くならなければ、トレードを停止し、プログラムロジックを変更しなければならない。
ERR_INVALID_STOPS 130 ストップ値が非常に近い、もしくは価格が不正か注文価格が正規化されていない。もし価格の衰微が原因でエラーが起きただけなら、試みを繰り返すことができる。5秒後、RefreshRates()関数を用いてデータの更新をした後、再度試みる。もし、エラーが無くならなければ、トレードを停止し、プログラムロジックを変更しなければならない。
ERR_INVALID_TRADE_VOLUME 131 無効なロット数で、精度に問題がある。全てのトレードを停止し、プログラムロジックを変更しなければならない。
ERR_MARKET_CLOSED 132 市場が閉じている。ある程度(数分以上)時間が経った後に再度試みる。
ERR_TRADE_DISABLED 133 トレード無効化。全てのトレードを停止するべき。
ERR_NOT_ENOUGH_MONEY 134 売買するための十分な資金が無い。同じ変数でのトレードでは再試行できない。5秒後にロット数を落として再試行する。しかし売買を完了するのに十分な資金があることを確認する必要がある。
ERR_PRICE_CHANGED 135 価格値が変更された。RefreshRates()関数を用いて、すぐにデータの更新をし、再試行する。
ERR_OFF_QUOTES 136 相場価格が無い。何かの原因(例えば、セッションが始まってからの価格ではない、正規化されていない価格、市場より早い)によって、仲介業者がその価格を提供せず、拒否している。5秒後、RefreshRates()関数を用いてデータの更新をした後、再度試みる。。もし、エラーが無くならなければ、トレードを停止し、プログラムロジックを変更しなければならない。
ERR_REQUOTE 138 指定した価格が時間外の価格、またはbidとaskがごちゃ混ぜになっている。RefreshRates()関数を用いて、すぐにデータの更新をし、再試行する。もし、エラーが無くならなければ、トレードを停止し、プログラムロジックを変更しなければならない。
ERR_ORDER_LOCKED 139 注文がロックされている。全てのトレードを停止し、プログラムロジックを変更しなければならない。
ERR_LONG_POSITIONS_ONLY_ALLOWED 140 買いポジションだけ許されている。SELL操作子で再試行することはできない。
ERR_TOO_MANY_REQUESTS 141 要求が多すぎる。要求の頻度を少なくするように、プログラムロジックを変更しなければならない。

142 その注文は仲介業者の実行待ち状態である。エラーではないが、クライアント端末とトレードサーバ間の相互作用コードである。このコードは稀にしか得ることができず、売買操作の実行中に接続切断、再接続が起きた時にしか得ることができない。このコードはエラー128と同じように処理するべきである。

143 注文が仲介業者に受け入れられた。クライアント端末とトレードサーバ間の相互作用コードである。コード142と同様の理由で現れる。このコードはエラー128と同じように処理するべきである。

144 注文がクライアント側の確認作業によって破棄された。クライアント端末とトレードサーバ間の相互作用コードである。
ERR_TRADE_MODIFY_DENIED 145 オーダー値が市場値と近く、すぐに実行することができないので修正が拒否された。RefreshRates()関数を用いて、15秒後にデータの更新をし、その後再試行する。
ERR_TRADE_CONTEXT_BUSY 146 トレード状況がビジー状態。IsTradeContextBusy()関数がFALSEを返す場合だけ再試行する。
ERR_TRADE_EXPIRATION_DENIED 147 期限切れの注文を使用したため、仲介業者によって破棄された。有効期限がゼロ化されているなら、再試行することができる。
ERR_TRADE_TOO_MANY_ORDERS 148 オーダー数が仲介側の設定した限度を超えている。存在するポジションやオーダーを閉じるか、削除した後にだけ、新しいポジションや未決注文を置くことができる。


にほんブログ村 為替ブログ FX システムトレード派へ
Trackback
この記事のトラックバックURL
≪この記事へのトラックバック≫
Designed by aykm.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。