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

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

2009-03-01から1ヶ月間の記事一覧

デフォルトのモジュール取得先はmvnrepository.comです。

Ivy

Ivyは、デフォルトではmvnrepository.comからモジュールを取得するとのこと。なので、mvnrepository.comで公開されているモジュールは基本的に利用可能です。 公開モジュールは、サイトで検索して探せます。 モジュールが見つかったら、dependency要素にてma…

Ivyで依存モジュールを取得するサンプル

Ivy

次のプロジェクト(の依存プロジェクト)で「ivy.xml」が出てきたのでメモ。 IvyはAntに組み込んで使えるモジュールの依存関係マネージャで、ivy.xmlはその設定ファイルです。 モジュールの依存関係を「ivy.xml」に記述することで、 依存モジュールの解決、お…

オープン・フリーのFX自動取引システム「jiji」

「jiji (ジジ) 」は、オープン・フリーのFX自動取引システムです。 完全自動でのFX取引を実現 レートデータの取得から証券会社への発注まで、プログラミングしたルールに従った完全自動でのFX取引を実現します。 取引ルールはRubyで 取引ルールはオブジェク…

[jiji] オープン・フリーのFX自動取引システム「jiji」

セーフレベル4でのインスタンス変数の変更ではまる

セーフレベル4でも、汚染されたオブジェクトが対象であれば、インスタンス変数の変更が可能です。ただし、更新するインスタンス変数がクラス内で1度も使われていない場合、SecurityErrorとなるのでご注意。 # 指定のSAFEレベルでブロックを実行する。 def sa…

画像の下に妙なスペースができるのを何とかする。

CSS

画像をdiv要素で囲ったりすると、画像下に妙なスペースができることがあります。→例。 こういうときは、div要素に対して以下の設定を追加することで回避できます。(IE7,FireFox3で確認) font-size: 0px; line-height: 0px;サンプルはこちら

ServiceLoaderでプラグインの仕組みをさくっと作る。

ServiceLoaderを使うと、リソースを使ったプラグインの仕組みをさくっと作成できます。 サービスインターフェイスと実装を作り、 jar内の「META-INF/services/インターフェイスのクラス名>」にサービス構成ファイルを作成、実装クラスを並べておきます。 後…

リモートで動作しているWindowsのサービスを再起動する

SCコマンドを使えば、Windowsのサービスを操作できます。リモートでの操作もサポートされているので、別サーバーで動作しているサービスの再起動とかも可能。具体的には以下でOK。 sc <"\"付きサーバー名 例) \\foo2003 > stop <サービス名> sc <"\"付きサー…

ネットワークカードの優先順位の変更

ループバックインターフェイスを入れたらOracleさんは無事インストールできたのだけど、後から入れた別のサーバーがループバック用のIPアドレスで待ち受けるようになってしまってさっぱり動かん。調べてみると、ネットワークカードには優先順位があってWindo…

Oracleのインストールで"change_on_install.DMPのオープンに失敗しました。"のエラーになる。

SQLServerの次はOracleですよ。ということでOracleのインストールを試みるも、表題のエラーではまる。 現象 コンフィグレーションアシスタントで、"change_on_install.DMPのオープンに失敗しました。"のエラーになってインストールに失敗する。ログによるとO…

通常注文の注文一覧取得を実装

通常注文の注文一覧取得を実装しました。 →Github - unageanu / clickclient_scrap ※IFDやOCO注文の一覧は不完全です。IFDやOCO注文のの場合、2つめの注文の情報が返されません。 注文一覧画面から取得できる情報のみを返すようにしています。 「有効期限」…

配列の値の95%が属する範囲を算出する関数

配列の要素をto_iした値が正規分布することが知られている場合に、「値の要素の95%が属する範囲」を算出する関数です。 class Array # 要素をto_iした値が正規分布することがわかっている場合に、 # 値の95%が属する範囲を算出する。 def predictionInterval…

String#strip

JavaScriptにはString#stripやString#trim的なものはないのかー、と思ったらprototype.jsにありました。 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <script type="text/javascript" src="./prototype.js"></script> <script type="text/javascript" > function main() { // stripで文字列の先頭と末尾の空白文字列を削除。 var …</meta></head></html>

document.designModeで文書を編集可にする

designModeを'on'にするとiframe内の文書を編集できるようになります。 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> </head></html>

:first-letter と :first-line

CSS

「:first-letter」 で段落の最初の一文字に適用されるCSS 「:first-line」で段落の最初の一行に適用されるCSS をそれぞれ指定できます。 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> </html>

jarを比較するスクリプト

jarを比較する必要があったので、ちょろっとスクリプトを書きました。 jarを展開して、 各ファイルをmd5sumで比較。 違っていたら、 クラスファイルはjavapの出力結果をdiffで比較 それ以外は、ファイル自体をdiffで比較。 使い方 $ diffjar.rb <比較するjar…

今日の日付を変数に代入

forを使う。戦略は以下です。 forでコマンド「date /t」の実行結果を列挙し、 最初の1つを環境変数に設定。 @echo off for /f %%a in ('date /t') do set TODAY=%%a echo %TODAY%実行結果です。 2009/03/16ちなみに、カレントディレクトリの取得(ROOT=`pwd`)…

通常注文での有効期限指定に対応。

通常注文での有効期限と取引方法(指値or逆指値)指定に対応。→Github - unageanu / clickclient_scrap成行注文や、OCO注文などは未実装です。 サンプル $: << "../lib" require 'clickclient_scrap' # ※sample.rbと同じディレクトリにuser,passファイルを作成…

const_missingでプロキシモジュールを作る

Module#const_missingでモジュールに定数やクラスが定義されていない場合の動作を指定できます。 Object#method_missingのクラス版と考えてよいのかな。 引数で参照した定数の名前が渡されてきます。 これを利用して、返却するクラスを動的に差し替え可能な…

img要素でalt属性の内容はポップアップしない。titleの属性値がポップアップする

Web標準普及プロジェクト-img要素でalt属性の内容がポップアップしないより img要素のalt属性に値を設定しておくと、 その画像の上にマウスカーソルを乗せた時にポップアップによってその画像の説明が出る、 またはalt属性そのものがそういう役割の属性であ…

平均・分散・標準偏差を求める

配列の要素をto_iした値の平均・分散・標準偏差を求める関数です。 class Array # 要素をto_iした値の平均を算出する def avg inject(0.0){|r,i| r+=i.to_i }/size end # 要素をto_iした値の分散を算出する def variance a = avg inject(0.0){|r,i| r+=(i.to…

複数のサーバーに導入されているモジュールが同じかチェックするスクリプト

複数のサーバーに導入されているモジュールが同じかチェックするスクリプトを書いてみた。といっても 「net/ssh」でssh接続し、 「md5sum」を実行してダイジェストを表示する だけですが。 #!/usr/bin/ruby require 'rubygems' require 'net/ssh' SERVER = S…

ダブルマージンフロートバグに遭遇

CSS

なんか、IE6だと余白が広い気がするなーと思ったらバグでした。 「ダブルマージンフロートバグ」と呼ばれるものらしい。名前がつくくらいなので有名なバグなんだろうなー。 詳細はCSS Radar - IE ダブルマージンフロートバグをFixが詳しいです。 対策 「disp…

table要素のcellspacing="0"をCSSで

CSS

「border-collapse: collapse;」で同様の効果が得られます。 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> </head></html>

指値での注文機能を実装。

指値での注文ができるようになりました。ただし、以下は未サポートです 逆指値注文 有効期限の指定 戻り値の返却(そもそも情報が返されない。どうするかなー。) →Github - unageanu / clickclient_scrap成り行きや、OCO取り引きなどももちろん未実装です。 …

セーフレベルの高い環境から、特定のオブジェクトのメソッド呼び出しを別のセーフレベルで実行するユーティリティ

ネタがないので、昔書いたクラスでも発掘するかな。ということで、前に書いたセーフレベルの高い環境から、特定のオブジェクトのメソッド呼び出しを低いセーフレベルで実行するためのユーティリティです。仕組みは以下のとおり。 低いセーフレベルで動作する…

コマンドを特定のユーザーで実行したい。

「runas」コマンドが使えます。 PS C:\> runas /user:<ドメイン>\<ユーザー名> "<コマンド> <引数>"実行するとパスワードが要求されます。正しいパスワードを入力すると、指定のユーザーでコマンドが実行されます。ちなみに、現在実行しているスクリプトの実…

任意のプログラムを別プロセスで起動する

任意のプログラムを別プロセスで起動する関数を書きました。 startが使えるのかなと思ったけど、PowerShellではサポートされていない様子。 なので.NetのProcessクラスを利用して新規にプロセスを立ち上げています。 function fork( $file, $arg, $dir=$null…

ローカルのファイルをフォルダ階層を維持したままSharePoint上にコピーしたい

Share Point ServerはWebDAVが話せます。なのでWindowsの「Webフォルダ」を使うと、ローカルのフォルダを(操作的な意味で)さくっとコピーできます。 「Webフォルダ」機能で接続すれば、後はローカルのフォルダをドラッグ&ドロップでOK。MKCOLも対応している…

VirtualBoxのディスクイメージを複製する。

「VBoxManage clonehd 」でVirtualBoxのディスクイメージを複製できます。 VDIのパスは、「uuid」or「名前」or「VDIへの絶対パス」で指定可能です。 「-remember」オプションを指定すると、コピーしたものを自動でVirtualBoxに登録してくれます。 あと、「-f…