無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

全銘柄、全期間の日ごとの各種平均値、標準偏差を計算するSQL

SQL

stockdb のデータをもとに、全銘柄、全期間の日ごとの各種平均値、標準偏差を計算するSQLを書いたのでメモ。 終値、出来高、価格変動率のそれぞれについて、過去3,5,10,15,25,50,75日の平均値と標準偏差を一気に算出します。 それなりに時間はかかります。確…

日本株の日足データをローカルのデータベースに取り込むツールを作った

日本株の日足データをローカルのデータベースに取り込むツールを作ってみました。 github.com Quandl で公開されている日本株の日足データを取得して、ローカルのPostgreSQLに取り込みます。 Tokyo Stock Exchangeデータベースの全データを取り込むので、ETF…

Clairをインストールして、Dockerイメージの脆弱性スキャンをする手順

Dockerイメージの脆弱性スキャンツール「Clair」 をインストールして、ローカルのイメージをチェックする手順です。微妙にはまったのでメモ。 0.環境 $ cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) $ docker -v Docker version 1.10.2, b…

GitHub の Dockerfile から Docker Image を自動ビルドする設定手順

Docker Hub の Automated Builds を使うと、GitHub または Bitbucket の Dockerfile の変更を検知して、Docker Image を自動ビルドすることができます。 レポジトリへのコミットを検知して、Docker Hub の Docker Image を自動でビルドします。 タグやブラン…

レンジブレイク手法でのトレードをアシストするBotのサンプル

FXシステムトレードフレームワーク「Jiji」 のサンプルその3。 レンジブレイク手法を使ったトレードをアシストするBotを作ってみました。 FX Wroks さんのサイト に掲載されていた「レンジブレイクを狙うシンプルな順張り」手法を、そのままJijiに移植してみ…

機械学習手習い: サポートベクターマシン

「入門 機械学習」手習い、12日目。「12章 モデル比較」です。 www.amazon.co.jp 最後のアルゴリズム、サポートベクターマシン(SVM)を学び、最後に同じデータセットにロジスティック回帰やk近傍法など、今まで学んできたアルゴリズムを適用して比較します。 …

機械学習手習い: ソーシャルグラフの分析

「入門 機械学習」手習い、11日目。「11章 ソーシャルグラフの分析」です。 www.amazon.co.jp Twitterのソーシャルグラフの可視化をためし、グラフからおススメの友達を推薦するシステムを作ります。 # 前準備 > setwd("11-SNA/") ローカルコミュニティ構造…

機械学習手習い: k近傍法を使ったレコメンドシステムを作る

「入門 機械学習」手習い、10日目。「10章 k近傍法:推薦システム」です。 www.amazon.co.jp k近傍法を使って類似度の高いデータを集める手法を学び、これを使ってRユーザーにRパッケージを推薦するシステムを作ります。 # 前準備 > setwd("10-Recommendation…

機械学習手習い: クラスタリング

「入門 機械学習」手習い、9日目。「9章 MDS:米国上院議員の類似度の視覚的な調査」です。 www.amazon.co.jp 観測値をクラスタリングするための、多次元尺度構成法(MDS:multidimensional scaling)を学び、得票に基づいて米国上院議員をクラスタリングしてみ…

機械学習手習い: 主成分分析を使った株価指標の作成

「入門 機械学習」手習い、8日目。「8章 PCA:株式市場指標の作成」です。 www.amazon.co.jp PCA(principal components analysis)とは、日本語で主成分分析のことで、 多数のデータを「縮約」して、傾向を表す少数の指標を作成することを指します。 今回は、…

機械学習手習い: 暗号解読

「入門 機械学習」手習い、7日目。「7章 最適化:暗号解読」です。 www.amazon.co.jp 最適化について学び、それを使ってシーザー暗号を解読するシステムを作ります。 # 前準備 > setwd("07-Optimization/") 最適化とは 最適化とは、設定で動作を変更できる機…

機械学習手習い: 多項式回帰と正則化

「入門 機械学習」手習い、6日目。「6章 正則化:テキスト回帰」です。 www.amazon.co.jp 多項式回帰と、過学習を避けるための正則化について学び、最後に正則化を使って書籍の裏表紙の紹介文から人気順を予測します。 # 前準備 > setwd("06-Regularization/"…

機械学習手習い: 回帰分析

「入門 機械学習」手習い、5日目。「5章 回帰:ページビューの予測」です。 www.amazon.co.jp 回帰分析を使って、Webサイトのページビューを予測します。 平均値による単純な予測と、予測精度の計測 回帰分析のイメージをつかむために、平均値を使った単純な…

機械学習手習い: 重要度による電子メールの並び替え

「入門 機械学習」手習い、4日目。「4章 順位づけ:優先トレイ」です。 www.amazon.co.jp 電子メールを重要度で順位づけするシステムを作ります 並び替えのアプローチ 以下の素性を使って、メールに優先度をつけます。 1) 送信者のメッセージ数 やり取りが多…

機械学習手習い: スパムフィルタを作る

「入門 機械学習」手習い、3日目。「3章 分類:スパムフィルタ」です。 www.amazon.co.jp ナイーブベイズ分類器を作って、メールがスパムかどうかを判定するフィルタを作ります。 分類器の仕組み 1) 以下の単語セットを作成 (a) スパムメッセージに出現しやす…

機械学習手習い: 数値によるデータの要約と可視化手法

「入門 機械学習」手習い、今日は「2章 データの調査」です。 www.amazon.co.jp 数値によるデータの要約と、可視化手法を学びます。 テスト用データの読み込み > setwd("02-Exploration/") > data.file <- file.path('data', '01_heights_weights_genders.cs…

機械学習手習い : Rをインストールして、基本的な使い方を学ぶ

オライリーの「入門 機械学習」を手に入れたので、手を動かしながら学びます。 www.amazon.co.jp まずは、1章。Rのインストールと基本的な使い方の学習まで。 Rのインストール 手元にあったCentOS7にインストールしました。 $ cat /etc/redhat-release CentO…

トラップリピートイフダンのような注文を発行するエージェントのサンプル

FXシステムトレードフレームワーク「Jiji」のサンプル その2、として、 トラップリピートイフダンのような注文を発行するエージェントを作ってみました。 ※トラップリピートイフダン(トラリピ)は、マネースクウェアジャパン(M2J)の登録商標です。 トラップ…

インタラクティブにトレーリングストップ決済を行うBotを作ってみた

FXシステムトレードフレームワーク「Jiji」の使い方サンプル その1、ということで、 Jijiを使って、インタラクティブにトレーリングストップ決済を行うBotを作ってみました。 トレーリングストップとは 建玉(ポジション)の決済方法の一つで、「最高値を更新…

MongoDBのinsert/updateをまとめて、bulk insert/update に流すユーティリティを書いた

バッチ処理などでMongoDBに大量のinsert/updateを行うとき、Mongoidを使って1つずつ #save してると遅い。 ということで、複数の #save をまとめて bulk insert/update に流すユーティリティを書いてみました。 使い方 モデルクラスで、Mongoid::Document と…

nukeproof/oanda_api のコネクションリーク問題とその対策

OANDA fx Trade APIのRubyクライアント「nukeproof/oanda_api」には、TCPコネクションリークの問題があり、長時間連続で利用しているとファイルディスクリプタが枯渇します。 内部で利用している persistent_http の古いバージョンにある不具合が原因(最新の…

ReactとCordovaで、Web/モバイルのハイブリットアプリを作った話

ReactとCordovaを使って、ブラウザ向けのWebUI + Androidで動くスマホアプリ を提供するサービスを、一人で作ってみた話です。 サマリー 作ったもの 最大の課題:作業量 一人で作りきるために意識したこと 取り組み1: Cordovaを使って、Web UI/スマホアプリの…

無料で使えるFXシステムトレードフレームワーク「Jiji」 のBeta版をリリースしました

お待たせしました。本日、Beta版をリリースしました! 使ってみて、不具合報告やご意見など頂ければ嬉しいです! jiji2.unageanu.net

FXシステムトレードフレームワーク「Jiji2」の開発状況 その2

追記(2015-12-01): FXシステムトレードフレームワーク「Jiji」、リリースしました! jiji2.unageanu.net 使ってみて、ご意見など頂けるとうれしいです。 前回の更新からだいぶ時間が空いてしまいました・・・。少しずつ実装は進んでいます。 github.com 9月10…

Jiji2 - ホーム画面のスクリーンショット

追記(2015-12-01): FXシステムトレードフレームワーク「Jiji」、リリースしました! jiji2.unageanu.net 使ってみて、ご意見など頂けるとうれしいです。 ホーム画面のデザインができてきたので、現状のスクリーンショットを公開します。 ご意見などいただけれ…

Jiji2の開発状況

追記(2015-12-01): FXシステムトレードフレームワーク「Jiji」、リリースしました! jiji2.unageanu.net 使ってみて、ご意見など頂けるとうれしいです。 しばらく更新できていなかったので、現在の開発状況を簡単にまとめておきます。 徐々にですが、動くよう…

マニュアルに書かれていないOANDA fx Trade APIの仕様3つ

OANDA fx Trade APIで、マニュアル に詳細が書かれていない仕様がいくつかあったので、動かしてみて確認した内容をまとめておきます。 サマリ REST APIでは、stop と marketIfTouched で注文が可能 注文のレスポンスに含まれる、tradeOpened、tradesClosed、…

Webアプリ向け高機能コードエディタ「Ace」をReactに組み込んで使ってみる

Ace とは? Ace は、Webアプリケーション向けのリッチなコードエディタです。 シンタックスハイライトや正規表現検索に対応した高機能なコードエディタを、Webアプリにさくっと組み込めます。 機能一覧: (Aceのサイトより) Java,Ruby等を含む、110言語のシン…

OANDA fx Trade API を使って、リアルタイムな為替レートを取得してみる

今さらですが、OANDA Japan から FXトレードAPI が提供されているのを発見。 www.oanda.jp レート情報の取得から、取引、建玉情報の取得などのFX 取引に必要なAPI一式が提供されています。 初期費用、月額利用料金は無料。ただし、口座残高が25万円以上必要…

JavaScript Dateのタイムゾーン指定できない問題とその対策

JavaScriptのDate型では、タイムゾーンを外部から指定できない JavaScriptのDate型は、タイムゾーンの情報を持ってはいますが、APIで外から変更することはできません。 getTimezoneOffset() はあるけど、setTimezoneOffset(timezone) はありません。 getTime…