FXボーグ | テクニカル実験室

テクニカル分析を使った自動売買プログラムの開発に挑戦!

スポンサーリンク

ティックを使用した非時系列足「isokinetic chart v2.0」をアップしました。

isokinetic chart v2.0をアップしました。今回はバーの生成にティックを使用しています。isokinetic chart については以前の記事をご覧ください。 以下はUSDJPY15分足との比較です。 上段:USDJPY15分足、下段:isokinetic chart

LXCの導入から非特権コンテナ用の設定とIPの固定化まで

VPS上のMT4がCPUを圧迫していたので対処法を調べたところ、LXCというパッケージを使うことでリソースの制御ができるようです。LXCについては以下のページが参考になりました。 Lxc で始めるケチケチ仮想化生活?!LinuxコンテナとLXC入門 (2015-09-13) / 1st…

Xvfbでヘッドレス MT4環境を構築

Xvfb (X virtual framebuffer) は X11の仮想ディスプレイを作るソフトウェアです。これを使うとMT4のように画面が必要なソフトをGUIなしで起動することが可能です。 【参考リンク】 http://www.tsukune.org/skk/memo/index.php?Xvfb この前の isokinetic チ…

レンタルサーバーにSoftEther VPN を導入 (Debian7.8)

レンタルサーバーにSoftEther VPN を導入しました。これでどこからでも安心して繋げるハズ。いくつかハマッた点もあるので備忘録として載せておきます。 SoftEther VPN はオープンソースの、無償で、複数プラットフォームおよび複数 VPN プロトコル対応の VP…

isokinetic チャートで規則性を回復させる

通常のチャートでは指標や時間帯などの影響で規則性が失われることがよくあります。 こういった問題に対して「チャートの方をイジッてしまおう」というアイデアは古くから存在しているようで、練行足、等ボリュームバー、プライスチェンジ・バー等があります…

AFA v1.1とHiguchi_FD v1.1 インジケーターをアップしました。

AFAとHiguchiFDを更新しました。以前のものはフラクタル次元(1.0~2.0の値)を表示していましたが、この値の信頼性を可視化してみました。こんな感じです。 ▼中段:HiguchiFD v1.1 [length(200)、k1(10)、k2(40)、corr_threshold(0.999)] ・ピンク・・・…

AFA (Adaptive Fractal Analysis) インジケーターをアップしました。

AFA (Adaptive Fractal Analysis) インジケーターをアップしました。AFAは、J.B. Gao, J. Hu, W.W. Tung, らが考案したフラクタル分析の比較的新しいツールです。 DFAと同様にトレンド除去後の成分を基に解析を行うのですが、トレンドの求め方に特色がありま…

N次多項式フィットに行列を使う方法

Gao 博士のサイトで AFAのコード を見ていたら、多項式フィットを行う処理が次のように書き換えられてありました(AFAはフラクタル解析を行うアルゴリズムです)。 seg_data = data(xi);%slope = polyfit(xi, seg_data', fit_order);%left_trend1 = polyval(…

HFD (Higuchi Fractal Dimension) インジケーターをアップしました。

HFD(Higuchi Fractal Dimension) をMT4で動かしてみました。HFDはフラクタル次元を求めるアルゴリズムの一つです。以下はFDIインジケーターとの比較です。 中段・・・FDIインジケーター(期間:128)下段・・・HFDインジケーター(期間:128、k_max:32)

MF-DFAのスペクトル幅を表示してみました。

前回のMFDFAを少し改良しました。今回はマルチフラクタルのスペクトル幅を表示しています。このスペクトル幅はフラクタル構造の多様さを表していて、幅が広いほどマルチフラクタル性が高くなります。 こんな感じです。 ヒストグラム・・・マルチフラクタルの…

とりあえずMF-DFAをインジケーター化(改良中)

GW中に終える予定だったMF-DFAのインジケーターを今頃作ってます。表示をどうするか悩ましいのですが、とりあえずスケーリング指数だけ表示してみました。 ・・・もうすこし工夫が必要そう。

「市場の方向」ではなく「市場の状態」を予測すること・・・

モダンなマーケットへのアプローチは、直感、テクニカル分析、またはファンダメンタルに基づいて予測しようとしないことにある。そのアイデアは「市場の方向」ではなく「市場の状態」を予測しようとすることである。 (Optimized Trend Trading - Page 40 @ …

カルマンフィルターでAR(2)モデルを表現するには・・・。

引き続きカルマンフィルターについて調べたことなどを・・・。 カルマンフィルターは座標や価格のみを使った予測とはちょっと違ってて、状態空間という内部の隠れた状態を推定するのが特徴なのだそうです。 で、その状態空間というのは最低限のルールに従え…

今更ですがカルマン・フィルターなどを勉強中。

ひさびさのブログ更新となりました。ここのところ、以前から「やんなきゃなー」と感じていたことの2、3個を着手しているのですが、どれもやりかけの状態なのでブログの方も後回しになっておりました。 その中に「相場環境の認識用に何かつくる」というのが…

Windows Server2012R2にSSHデーモンを導入(MSYS2+Cygrunsvr+OpenSSH)

Windwos Server2012R2にSSHサービスを導入したのですが、MS公式の「Win32-OpenSSH」がこける為、いろいろ試した中で最終的にMSYS2版を採用しました。 どうして急にSSHサービスかと言うと・・・ ネットで「CPU×2/メモリ6GB/HDD500GB」で月額12$とい…

mqlからDLL内のインスタンス・データにアクセスする方法

こちらのフォーラムにDLL内クラスをmqlにインポートする方法が書いてあったので試してみました。

【cTrader】MTAトレンド インジケーターをアップしました。

MTA(マルチスケール・トレンド・アナリシス)は Ilya Zaliapin氏らにより開発された区間線形近似アルゴリズムです。うまく分割出来ているようなのでインジケーター化してみました。 ▼USDJPY(1H) MTAの仕組み上リペイントしますが、そこまで頻繁に変…

有向非巡回グラフでMTAアルゴリズムの高速化(その2)

やっとこさオンライン版MTAアルゴリズムのコードが出来ました。今回の修正では、頂点を先に求めてから区間分割を行うので、設定によってはオリジナルと結果が異なりますが、標準設定では問題ないレベルと踏んでいます。 EURUSD(15分足)3/6 ~…

有向非巡回グラフでMTAアルゴリズムの高速化(その1)

MTAアルゴリズムを高速化するアイデアを考えてみました。MTAでは分割可能な全ての区間の統計量(残差平方和)を計算しているのですが、以下のグラフに沿って集計していけば事前に全ての区間の統計量を求めることが出来そうです。 こんな感じで全ての辺…

MTAアルゴリズムと単純トップダウン法との比較

前回の記事ではMTAを移植しましたが、一般的なトップダウン法とどのくらい違いがでるのか気になったので比較してみました。 トップダウン法はこちらのソースを使用しました。https://www.msi.co.jp/vmstudio/materials/tech_web/timeseries.html トップダ…

MTA区間線形近似アルゴリズムをPythonに移植。

MTA(マルチスケール・トレンド・アナリシス)は Ilya Zaliapin氏らにより開発された区間線形近似アルゴリズムです。たまたまこちらのブログで知りました。 こちらにMATLABによる実装があったので、さっそくPythonに移植してみました。(とりあえず動いたレ…

【cTrader】1分足を使って上位足の標準偏差・歪度・尖度を求める。

こちらのブログのOne-Passアルゴリズムを使用して、1分足の終値を使用した基本的な統計量を計算するインジケーター(cAlgo版)を作ってみました。 (EURUSD15分足) ・上段・・・ボリンジャーバンド(平均と ±2.0標準偏差 ) ・下段・・・歪度(青ライン…

cTrader でバックテスト

前回のヒストリカルデータを使用して、cTraderのバックテストを試してみました。バックテストを行うにはcBotという売買プログラムも必要になりますが、今回はボリンジャーバンドを使った簡単なボットを作ってみました。 EURUSD15M 2006.1~2017.2

JForexのヒストリカルデータをcTrader用に変換する。

cTraderのバックテストでCSVファイルのヒストリカルデータを選択できるようなのでJForexのヒストリカルデータで試してみました。 JForexでなくてもDukasCopyのサイトに行けば同等のヒストリカルデータを入手できますが、JForexの方が圧倒的に速いのでこち…

「cTrader」おためし中。プログラムはMql5とNinjaScriptの間をとった感じ。

「今後はmt4でやろう」と決意してまだ1週間ですが、どうしてもmq4で開発すると思うとやる気が起きず、軽い気持ちで「cTrader」をダウンロードしてみました・・・。 cTraderはいくつかの海外ブローカーで使われているプラットフォームで…

短期のブレイクアウト戦略

前回の「SnRインジケーター」を使った短期のブレイクアウトシステムがだいたい仕上がってきました。まだまだ意図通りに動かないところもあるのですが、方向性としては定まってきました。 「短期のブレイクアウト戦略」が優れてるなと思ったのは・・・ ・トレ…

SimpleAutoTL と SnR インジケーターをMT4に移植。

久しぶりのブログ更新です。この間はデューカスコピーの「JForex」を試していたのですが、思いのほか手こずって結局あきらめてしまいました。・・・それでいろいろと迷っていたのですが、だんだん「MT4でもいいか」という気になって、とりあえずイ…

ひさびさに風邪でダウン。

ひさしぶりに風邪を引いてしまい寝込んでいました。今日からようやく体調が戻り、今更ながら通常の日々に感謝しているところです。 ここらで少し立ち止まって、自分の考えを整理してみました。 「平均回帰戦略」 平均回帰戦略については「落ちたナイフは床に…

ブレイクアウト後のプルバックをEA化。

トレンドラインをブレイクアウトした後にプルバックでエントリーするという定番の手法をEA化してみました。 トレンドラインには「SimpleAutoTL」を使用し、プルバックの判定には「GannSwingBars」を使用しています。 EURUSD4H EURUSD過去10年(2017.01.12…

SimpleAutoTL v2.2をアップしました。

SimpleAutoTL v2.2をアップしました。変更点はパフォーマンスの改善がメインですが表示方法なども変えてみました。 EURUSD4H

SimpleAutoTLのブレイクアウトシステム

明けましておめでとうございます。今年もどうぞよろしくお願いします。この頃はトレンドラインを使って何かシステムを作ろうと模索しているのですが、今回はブレイクアウトシステムを試してみました。 (主要9通貨10年分)

SimpleAutoTL インジケーターをNinjaTraderへ移植。

検証用に SimpleAutoTL インジケーターをNinjaTraderに移植しました。一緒にブレイクアウト判定も行っています。こんな感じです。 (USDJPY15分)※2016.12.26 画像を最新版のものに差し替えました。 それから Windows10でフリーズしまくっていたので、今更…

SimpleAutoTL v2.0 をアップしました。

SimpleAutoTL v2.0をアップしました。前回との違いはラインを引くタイミングです。具体的には高値や安値の更新時だけラインを引くようにしました。また過去のラインを表示する機能も追加しています。こんな感じです。 (USDJPY15M )

SimpleAutoTL インジケーターをアップしました。

三角形を使用して簡単にトレンドラインを引く方法を考えてみました。こんなかんじです。 ラインの求め方・・・最安値から現在までのバーを凸包し、得られた線分の中から三角形の面積が最大となるラインを求めます 。

傾きと標準誤差を一緒に計算する方法。

最小二乗法で切片と傾きを計算しながら、同時に標準誤差まで計算できる方法がこちらの記事に載っています。とても簡単な計算なのでExcelでサンプルを作ってみました。 http://hachisue.blog65.fc2.com/?mode=m&no=106 今回、計算に使用するデータはxとyが…

前回の続き。今度はT検定のP値で最適化

前回の記事のつづきで今度はT検定のP値を使って最適化を行なってみました。前回の平均絶対誤差で比較した場合は短い期間が選択されやすいという問題がありましたが、T検定ではうまく判定できているようです。 トレンドラインの幅は Sqrt(残差平方和/個数)…

回帰チャネルの期間最適化。

ひとまずサポート・レジスタンスが表示できたので、今度はトレンドラインに取り掛かっています。まずは回帰チャネルの期間最適化を行なってみました。 ・青チャネル・・・30ー120期間を5バー間隔で回帰チャネルを表示 ・黄チャネル・・・平均絶対誤差…

SnR+ZigZagでヘッドの候補を表示します。

前回のSnRインジケーターとZigZagを組み合わせてみました。サポートとレジスタンスに収まっているZigZagの反転サインを無視することで、主要な反転サインが捉えやすくなります。 またZigZagは確定した頂点だけを表示してリペイントさせないようにしています…

SnR インジケーターをmqlに移植しました。

前回のSnRインジケーターをmql5に移植しました。通常のチャネルと違って、高値安値の更新時に少し戻すのを確認してから線を引き直します。 ・赤点・・・レジスタンス ・青点・・・サポート

SnR インジケーター(NinjaTrader版)をアップしました。

SnR インジケーターをアップしました。サポートとレジスタンスを表示します。サポートとレジスタンスの反転にも対応してみました。 ・赤ライン・・・レジスタンス ・青ライン・・・サポート

RangeTracker インジケーター(NinjaTrader版)をアップしました。

RangeTracker インジケーター(NinjaTrader版)をアップしました。トレンドが休止した後にレンジが形成されたら、そこからドテンし続けます。 こんな感じです。(USDJPY60分) ・上段・・・RangeTracker インジケーター ・中段・・・FlexTrend インジケータ…

シャンデリアストップの位置で逆に仕掛ける。

シャンデリアストップはトレーリングストップの一種ですが、ストップの位置を求めるのにATRを使用するのが特徴です。今回は通常の使用方法とは異なり、この位置からのエントリーを検証してみました。ふるい落とし後の大きな値動きをうまく捉えることがで…

FlexTrend インジケーターをアップしました。

以前作ったカスケードインジケーターを平滑化してみたのですが、こちらの方がトレンドの判定に向いてそうです。「システマティックトレード」の予測値っぽくシグナル化してみました。 ・赤ライン:FlexLine インジケーター ・黄ライン:EMA(128期間) ・…

平均回帰戦略の有効な時間帯

平均回帰戦略のシステムを最適化するために、いろいろなフィルターを試しているのですが、多少の効果はあってもどれも今一つという感じです。そこで今回は気分を変えて時間帯によるフィルタリングを行ってみました。 時間帯によるエッジはそんなに長く続かな…

ZorroからRを使うのはとても簡単。

ZorroからRを呼び出せるようなので試してみました。今回行ったのはハースト指数です。 Hurst 指数 (Hurst exponent) とは 時系列データに含まれるある種の “規則性” を表す特徴量であり, もともとは, 英国人水天文学者 Hurst によるナイル 川の水位時系列デ…

G Band インジケーターをアップしました。

ボリンジャーバンドって意外と機能するんだなと感心したので、以前作った G Trend をバンド風にアレンジしてみました。 USDJPY 5M

順張り系スイングトレードの優位性など

平均回帰とトレンドフォローには目処がついたので、今回はスイングトレードのシステムを作ってみました。といってもトレンドフォローと平均回帰を都合よく組み合わせただけですが・・・、こんな感じです。 1.上位足でトレンドが生じるのを待ちます。 2.…

Zorroで簡単なストラテジーを作る。

Zorroの勉強に簡単なストラテジーを作ってみました。プログラムは「LITE-C」という言語で書きます。これは非プログラマ向けに作られた言語らしく、より簡単に記述できるように工夫されています。 まずはEMAの交差による売買ロジックを実装してみまし…

Zorro から Oanda APIにブリッジ接続する。

11月からベーシックコースでAPIが使えなくなってしまうOANDAですが、とりあえず様子を見ながら開発を進めて行こうと思います。 OANDAのAPIを使うにはトレードシステムを自作する必要があると考えていましたが、こちらの「Zorro」を使…

PySystemTradeのチュートリアルを試してみました。

PySystemTradeは「システマティックトレーディング」の著者が公開されているバックテストエンジン(Python3で動作)です。ポートフォリオにも対応しているようです。こちらにチュートリアルがあるので実際に試してみました。