2011/03/16

FX売買システム多市場多期間最適化時代 - システムトレードの災害・障害対策について



今回の地震で、亡くなられた方々のご冥福をお祈りいたします。また、安否不明とされる方々及び、被災地で苦労されている方々には、心の傷が癒える事は無いと思いますが、早く元の生活に戻れる様お祈りいたします。

さて、前回は 最適値の寿命の検証と、目的関数について話をしました。今回は、さらに話をそらして、生活上の災害対策と、システムトレードにおける災害・障害対策について考えている事を書いてみたいと思います。

【住居での災害対策】
阪神大震災時は独身で大阪実家在住。一番の被害地からは離れていたものの、被害を受け記憶に。
今の住居は、嫁の首都圏実家をリフォームした一戸建て。
その中で、リフォームで考慮した災害対策。

1.耐震補強
2.屋根を軽く
3.IHクッキングヒータ
4.備え付け扉付き収納を多く
5.窓ガラスは強化ガラスに
6.家具設置時の配慮

●「3.IHクッキングヒーター」
 阪神大震災時は、食事時ということもあり、火災による犠牲も多かったので。
●「4.備え付け扉付き収納を多く」
 ピアノが走り回ったとか、ものが吹っ飛んでいったとかという身近な話も。
 地震 → 物が飛んでくる→ 扉付き収納で回避
 という発想。
●「5.窓ガラスは強化ガラスに」
 阪神大震災の余震に備え、窓ガラスが割れる事を防止するため、ガムテープを張り、
 仮に窓ガラスが割れても、破片が散乱しない様していたので、強化ガラスに。
 当然、防犯という理由もあるけど。
●「6.家具設置時の配慮」
 家具・TVの下には転倒防止のジェル、天井と家具の間には転倒防止のつっかえ棒。
 → 阪神大震災時は、家具の下敷きになり犠牲になったという話も少なくなかった。

【パソコンでの災害・障害対策】
だんだんと、トレード話題に近づいています。
まず、システムトレードにおける開発環境は自宅PC。
なので、PC障害対策についてです。

●ハードディスクについて
 災害・障害等で、HDDクラッシュすると、今までの苦労が水の泡。

 なので、HDDは、ハードミラーリング(RAID1) したNAS を用意。
 さらに、NAS の筐体障害を考慮し、NASに別のHDDをUSB接続。
 これで、NAS の機能により、USB接続したHDDにソフトミラーを定期的に

 さらに、家が崩壊した場合に備え、特に重要なデータは別途ポータブルHDDにバック
 アップを取り、貸金庫へ

●ネットワーク関係について
 今のところ、対策うっておらず、プロバイダが途絶えると、即インターネットに繋げ
 ない状況。かといって、固定費は削減したい。なので、UQ-WiMAX の導入を検討中。
 #使用しなければ、固定費タダなので。

 ただ、今回の地震の様に、住居近辺一体が災害になった場合、近辺の基地局も被害
 を受けているはずなので、役に立たない。。

【システムトレード(自動売買)環境構築の障害・災害対策】
ついに、FX話です。
今想定している運用は、VPS 上にMetaTrader4環境を構築しての自動売買。
そして、障害について考えてみると。

1.VPS 上のMT4をコントロールするのは、自宅PC。
  つまり、自宅PC→VPS の経路で障害が発生すると、
  保有ポジションが野放し状態且つ、状況不明な状態に陥っていしまう。
  【対策案】
  ・ネットブック等の小型予備PCを用意
  ・PCに、UQ-WiMax/携帯電話等接続して、予備のネットワーク環境を準備。
2.VPS 障害
  定期的なメンテナンスはあるとしても、VPS が障害にならない保障なんてない。
  #というか、機械である以上、必ず障害は発生する。
  この場合、MT4が強制終了されてしまう事に。
  なので、常にMT4のオンメモリ情報をディスクに出力するロジックが必要。
  #MT4まだ使ったことないですが、多分必要だと思います。
  そして、障害復旧後にMT4が起動された(される?)あと、保有ポジションに
  関する情報を取得するロジックが必要なのでは??
3.MT4障害
  VPS のOSは無事だが、MT4が単独障害で落ちてしまった場合。
  ポジション保有中は、リスクをさらしたまま無秩序状態に。
  なので、MT4が落ちたら通知する様な仕組みが必要なのでは?
  自宅PC上にMT4を動作させていればすぐに気づけるが、VPS上では
  気づきずらい。
4.プログラム障害
  要は、プログラム・ミスにより、急激にドローダウンが発生してしまう事を想定。
  【対策案】
  ・FX会社の設定変更により、すぐに追証が発生する様にしておく。
  ・戦略ストップロジックを追加し、証拠金が一定幅まで低下したら、トレードを
   ストップ(もし可能であれば、MT4の停止)させるロジックの追加。

【システムトレード(自動売買)中の障害発生時運用について】
ベストかどうかわかりませんが、まずは保有ポジションは、全て手放す事を考えています。
携帯から一発で、全保有ポジションを手放す指示をMT4に送れたらいいなぁ。

【システムトレードにおける災害対策】
何かしらのFX会社との通信手段が残されているのであれば、手作業で保有ポジションを手放し、取引できない様にし、証拠金を別の口座に移す事しか思いつきませんでした。

今回はオチもネタも書けません。そして「FXシステムトレード初心者奮闘記」の「多市場多期間最適化時代」は続くのでした。
#「世界中から寄せられた日本への祈り 」の様に、今後も世界の人々の思いが一つになれます様に。

3 件のコメント:

  1. tm 【旧ブログから転記】2013/05/07 18:52

    おつかれさまです
    vpsでEA、家のpcはモニター,分析,時々裁量用で使ってます

    証拠金維持率が~%になったら、メール送信させる手っ取り早い方法をググっても見つからないのでもしご存じでしたら教えて下さい。

    よろしくお願いします

    【旧ブログから転記】
    ※ このコメントは、旧ブログで頂いたコメントを、ブログ筆者が転記したものです。

    返信削除
  2. tm様

    コメントありがとうございます!

    証拠金維持率
      =証拠金残高÷必要証拠金
      =AccountEquity()/AccountMargin()

    の計算式で証拠金維持率をもとめ、計算結果を「~%」(例えば120%であれば、「1.2」)と比較し、条件を満たした場合に、mql4標準の「SendMail」命令を呼べば、メール送信されます。

    「証拠金維持率」に関する詳細は、以下の記事を参照ください

    → ロット数の計算(サイジング)プログラミングについて【改訂版】
    <>

    SendMailでメール送信する際は、MT4画面の「ツール」メニュー→「オプション」
    「オプション」画面の「e・メール」タブで、メール送信の設定が必要です。

    私は、Yahoo!メールのアカウントを利用しており、「SMTPサーバー」を「smtp.mail.yahoo.co.jp:587」と設定しています。

    補足ですが、送信するメールに日本語が入っているとメール送信に失敗する、という事例を聞いた事があります。

    また、プログラミングの際、証拠金維持率が指定した「~%」を跨いで振幅する様な場合、メールが大量に送信されてしまいます。一度「~%」を跨いでメール送信成功後はメール送信しない等の考慮が必要と思います。

    【旧ブログから転記】
    ※ このコメントは、旧ブログのコメントを、ブログ筆者が転記したものです。

    返信削除
  3. tm 【旧ブログから転記】2013/05/07 18:53

    早いお返事ありがとうございます!
    私はMQLとかコードは全然NGなので即物的な方が助かりますが,参照記事観て頑張ってみます。

    ありがとうございました

    【旧ブログから転記】
    ※ このコメントは、旧ブログで頂いたコメントを、ブログ筆者が転記したものです。

    返信削除