かぶだいくんのクリック証券対応

現在のバージョンは 20080629 0 だ。
http://d.hatena.ne.jp/unibon/20080620/p2 の続き。
「クリック証券の API は、注文照会と約定照会が分かれているが、これを効率良く、なるべく少ない照会回数で済むようになんらかのキャッシュを持たせたい。」
を実装した。ロジックはつぎのとおり。

  • 注文照会(kabuChumonList.do)と約定照会(kabuYakujoList.do)のアクセスの順序は、注文照会→約定照会、とすべき。これは、この逆(約定照会→注文照会)に照会すると、発注してすぐに約定した注文を取りこぼす可能性があるため。
  • 最後の注文照会の結果中に存在した注文が、最新の注文照会の結果中に存在しなくなった場合は、注文が全部約定したか、注文が取り消されたかのいずれかである。この場合だけ約定照会をすることでも十分である。
  • 注文照会の最後の結果を保持しておけば、上記の比較に使うことができる。
  • 約定照会の最後の結果を保持しておけば、約定照会が不要なときにキャッシュとして使える。(注文照会をした時に、上記の比較により、約定照会が必要かどうか判明し、不要だったらキャッシュから引っ張ってくればよい。)
  • 新規の売買注文を発注した場合は、その注文が注文照会結果に含まれるかどうかを調べ、含まれていなければ約定照会をする必要がある。新規発注の頻度は高くないので、新規発注をしたら無条件に約定照会をしても良い。