APIを利用した、オープンソースのシステムトレードフレームワークです。・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。この広告は、90日以上更新していないブログに表示しています。関数を呼び出すライブラリを見つけたので使ってみました。これを使うと、Rubyのプログラムからあらかじめ起動しておいたErlangサーバーにアクセスし、Erlangの関数を実行することができます。自作の関数も実行できます(ただし、Erlangサーバー側でロードしておく必要があります)。やりとりはTCP/IP上で行われているようなのでそれぞれ別ノードで起動してもOK(のはず)。使い方は次の通りです。サーバーとするErlangシェルを起動。ErlangシェルでRulangサーバーを起動。引数で待ち受けポートを指定する。このとき、必要であれば自作の関数をロードしておく。クライアントとするRubyスクリプトでRulangBridge::Rulangのインスタンスを生成。引数で、モジュール名、ホスト名、ポートを指定する。1モジュールに付き、1インスタンスが必要。生成したRulangBridge::Rulangインスタンスのメソッドを実行。→呼び出したメソッドと同名のErlangモジュールのメソッドが実行され、結果が返される。Usageがわかりやすいので、悩むことはないかと。1&2.サーバーとするErlangシェルの実行とRulangサーバーの起動。Erlangシェルを立ち上げて、そこでRulangサーバーを起動します。Rulangサーバーを起動。引数でポートを指定する。クライアントから呼び出すコードを読み込んでおく。{ok,sample}読み込んだsample.erlは次の通り。複利計算プログラムです。BaseをRateでYear年間運用した際の複利を計算する。end.3&4.クライアント側のスクリプトを作成。RulangBridge::Rulangのインスタンスを生成してメソッドを呼び出せばOK。RulangBridge::Rulangのインスタンスを作成。引数で呼び出す関数のモジュール名と接続先ホスト、ポートを指定する。sample:compound()を実行して結果を返す。25937.4おー、すげー。非同期での関数呼び出し非同期での関数呼び出しもサポートされています。RulangBridge::Rulang.newの第4引数をtrueにしてインスタンスを生成。メソッド呼び出し時に引数にProcを追加する。非同期処理の完了後、Erlang関数の実行結果を引数としてProcが実行される。関数の戻り値はThreadになるので、それを使って処理の待ち合わせなどができる。非同期呼び出しのサンプル。第4引数をtrueにする。引数としてProcが実行される。関数の戻り値はThreadになる。"a"thread.join実行結果です。Codeにプロジェクトを作った。»プロフィールid:unageanu今日学んだことを、ちょろちょろ書いていきます。(1)はてなブログをはじめよう!unageanuさんは、はてなブログを使っています。ブログを報告するスターをつけました引用をストックしましたストック一覧を見る閉じる引用するにはまずログインしてくださいログイン閉じる引用をストックできませんでした。再度お試しください閉じる限定公開記事のため引用できません。