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

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

Generics

型パラメータで指定されたクラスを取得する。

クラス定義の段階で型パラメータが決まっている場合(以下のようなクラスが該当)、Classから型パラメータで指定された型を得ることができます。(↓のクラスだと、HogeSet.classからSetの型パラメータであるString.classがとれる。) // クラス定義の段階でSetの…

タイプセーフなPropertiesを作る。

タイプセーフなPropertiesを作ってみます。 用件 整数など任意の型を記録できるjava.util.Propertiesみたいなのを作りたい。 値の型はキーごとに決まるので、キーに合わせてタイプセーフにしたい。 Stringを取り得るキーの場合、値をStringで設定でき、Strin…

複数のインターフェイスを実装したクラスのみ受け付ける型パラメータの指定

クラスやメソッドの型パラメータ指定では、"&"を使って受け付けるクラスの条件を結合することができます。これを使用して、「インターフェイスA,インターフェイスBの両方を実装したクラスのみ受け付ける」といった制約を行うことができます。 "&"で結合でき…

クラスのパラメータ化

クラスのパラメータ化について復習。 クラス名の後に「」をつけることで、パラメータとして受け付ける型を指定できる。 例) 「class Hoge {}」 「extends」を使用すると、受け付ける型を限定することができる。 「class Hoge {}」とすると... 型パラメータを…

SetとSetの違いまとめ

昨日の続き。「Set<String>」,「Set」,「Set」,「Set」の挙動について。 要素の追加 「set.add(object);」で縦軸の型のオブジェクトを追加可能かどうか。 Set<String> Set Set Set Object × × × × String ○ × × ○ Object型のオブジェクトはどれにも追加できない。 「Set<String>」,「</string></string></string>…

SetとSetの違いまとめ

どうやら「Set」は「Set」と違うらしい(!)ので、「Set」,「Set」,「Set」,「Set」の挙動についてまとめてみた。 要素の追加 「set.add(object);」で縦軸の型のオブジェクトを追加可能かどうか。 Set<Object> Set<String> Set Set Object ○ × × ○ String ○ ○ × ○ 「Set」,「Se</string></object>…