• カテゴリー別アーカイブ システムトレーディング
  • PythonでFXヒストリカルデータを読み込む

    皆さん、こんにちは。珍しく連続して記事を書いています。

    Pythonのプログラミングですが、とりあえず、FXのヒストリカルデータを読み込ませることをやってみました。これまでC++で書いていたのですが、ファイルからデータを読み込んで、タイムフレーム変えたりするのって結構面倒でした。Pythonだとどれくらい楽になるのかなと、あまり期待はせず調べてみましたが、結果的には予想以上に便利でした。

    FXのヒストリカルデータは、以下のサイトからダウンロードしました。

    HistData.com

    このサイトのダウンロードのページには、66種類の通貨ペアのヒストリカルデータがあります。EUR/USDやUSD/JPYなどメジャーな通貨ペアであれば2000年頃からのデータが入手できます。ただし、無料ということなので、データの品質については保証はできないかと思います。とりあえずPythonでのテスト用データとして使ってみます。

    1分足データとティックデータがありますが、ティックデータはサイズが大きいので、ここでは1分足データを使うことにします。

    データの種類もMT4用やNinjaTrader用など何種類か用意されています。基本的にテキストファイルなので、どの形式でも問題はありませんが、データの読み込み関数を使う関係で、日付データと時刻データが同じデータになっている「Generic ASCII」の形式を使いました。

    今回の記事で使ったのは、EUR/USDの2015年のデータです。ダウンロードしたのはzipファイルなので、これを解凍(最近は展開って言うんでしたっけ)すると、次のファイルができます。

    DAT_ASCII_EURUSD_M1_2015.csv

    ここまで準備できたら、Pythonのプログラムを作っていきます。続きは以下のリンクを見てください。

    PythonでFXヒストリカルデータを読み込む by Jupyter notebook



  • 「ミリオネアFX」の類のシステムについて

    当サイトでは、個別の情報商材のアフィリエイトはやってないのですが、Google AdSense で、FX商材のリンクが勝手に表示されることはよくあります。自分のサイトを見ていて、ついついクリックしてみると、また同じ商材の宣伝だったりすることも。
    最近「ミリオネアFX」というFX商材が人気のようですね。これを購入したわけではないので、このFX商材自身の評価をするわけではありません。あくまで、クロス円の複数の通貨ペアの週足でシグナルを出すシステムということから、一般論としてコメントしておきます。
    まず、トレード対象がクロス円のみということですが、確かに複数の外貨に分散してはいるものの、対象はすべて円なので、円の動きの影響が大きく出ます。最近は円安のトレンドが継続しているのでうまくいっているのでしょうが、個人的にはクロス円のみでのシステムトレードはリスクが大きい気がします。
    もう一つ週足でのシグナルですが、確かにシンプルなシステムであれば、時間足より日足、日足より週足の方がだましに会いにくいということが言えます。但し、その分、大きなドローダウンを覚悟しておく必要があります。週足でのシグナルのようにシグナルの頻度が低い場合、かなりの期間でのバックテストが必要となります。しかし、週足ではデータ数がそれほど取れないので、十分なバックテストができるかどうかが疑問です。もし、これまでのバックテストで大きなドローダウンがないとしたら、それが現れるのはこれからです。
    円安のトレンドが継続する短期的な運用なら大丈夫かもしれませんが、何十年も運用に耐えられるシステムではないと思います。安易にシステムトレードを始める前に、システムトレードについてよく調べた方がいいでしょう。
    にほんブログ村 為替ブログへ上位ランキングのブログ記事はこちら



  • シストレナビ

    2ヶ月前にシストレナビっていうサイトがオープンしたようで、久しぶりに覗いてみると、なんと当ブログが人気ランキング10位に入っていました!
    自分で登録した覚えはないのですが、まだ登録ブログ数も少ないので上位に食い込めたようですね。
    やっぱりシステムトレードの記事って見る人が多いんですね。
    にほんブログ村 為替ブログへ上位ランキングのブログ記事はこちら



  • システムトレードとの付き合い方(続き)

    先日、IPAMのシステムを5000ドルで運用始めて、1週間も経たないうちに4000ドルになってしまいました。普通の精神状態なら、これは耐えられないとやめてしまうかもしれません。私もバックテストの結果しかないシステムで、本運用でいきなりこれだけのドローダウンを食らってしまえば、即撤退することでしょう。
    では、なぜこのシステムをやめないのか?
    理由の一つはこのシステムの分散性です。トレーディングシステムを作ったことのある人なら経験あると思いますが、通貨ペア、タイムフレーム、戦略を固定したシステムでも一時的に利益を出すことはできますが、ちょっとでも条件を変えると全く逆の結果になるということもよくあります。そういう不安定なシステムは簡単にできてしまいます。しかし、不安定なシステムでもお互い相関の少ない複数のシステムを同時に実行すれば、リスクを分散させることができ、ある程度システムを安定化させることができます。システムトレーディングでは、個々のトレードに執着してしまうと、全く信用できなくなってしまいますので、トレードの集合、さらにシステムの集合として評価する必要があると思います。
    このシステムの具体的な戦略はわからないにしろ、システムを分散させるという考えとして間違った方法ではないと感じるので、ここで撤退するのではなく、最低1年はつきあっていきたいと思えるのです。
    そして、もう一つ、撤退しない理由。それは最大のリスク、投資資金がなくなることを許容できるからです。
    私はスワップ+オプションを利用した一つのシステム(といっても裁量が入るので完全なシステムではありませんが)を自分のものにしたと思っています。これは高い年率は期待できませんが、その分、投入した資金に見合ったリターンが得られます。
    この心理的な余裕から、5000ドル程度であればそれがなくなるというリスクを受け入れることができるのです。
    なーんだ、そんなことかと思われるかもしれませんが、システムを見る目を養うこと、最大のリスクを許容する金銭的、心理的状態を作り出すこと、これは人の話を聞くだけではわからないことです。実際に失敗を繰り返してはじめてわかることも多いのです。相場の世界、楽して儲けることはできない代わりに、努力は報われるものです。
    にほんブログ村 為替ブログへ上位ランキングのブログ記事はこちら



  • システムトレードとの付き合い方

    私とほぼ同じ時期にM4スーパーFXを購入してIPAMのシステムを運用を始めて詳細な報告をされていたブロガーがいらっしゃったのですが、既に撤収されてしまいました。
    私もコメントでエールを送ったばかりだったのに、残念です。
    ただ、撤収された理由もよくわかります。以前の記事で書いていますが、このシステムは、5月に-18%という最大ドローダウンを記録しています。システムトレードで20%程度のドローダウンは当たり前だと思いますが、-18%というドローダウンを大きく感じるのは、過去の月別の最大ドローダウンが7%程度だったからです。
    過去の実績(単なるバックテストではなくリアルな運用結果)を見てシステムを導入する場合、普通はこれまでの最大ドローダウンが最大のリスクだと思い勝ちです。なので、そのリスクを超えた場合、耐えられなくなることはよくあります。おそらくこれが普通の精神状態だと思います。
    また過去のデータで隠れている部分、それは日単位で見たドローダウンです。月単位での最大ドローダウンがたとえ7%であったとしても、それは単に月末時点での評価に過ぎません。月の途中でさらに大きなドローダウンがあったとしても、その後回復すれば、その記録は表には表れません。その表には表れないドローダウンを運用途中に経験してしまうと、精神的に参ってしまうことも普通です。
    ここまで、こんなドローダウンを経験すればやめるのが普通と書いてきましたが、私は今のところ全くやめようとは考えていません。それは何故か?続きは後ほど・・・
    にほんブログ村 為替ブログへ上位ランキングのブログ記事はこちら