人類みんなごくつぶし

2004-12-14

[]注文の確認 05:09

カブロボの作ったプログラムのパラメータをチューニングするといっても

どの注文がうまくいってどれが失敗だったかなどが分からないと、

チューニングもしずらいです。


標準出力のログを見ていってもできますが、ダルくなってきました。


以前、mainからカブロボを実行する方法

http://d.hatena.ne.jp/muimy/20041112#1100283614

を試しましたが、これでは取引結果の確認がしづらいです。


もう一歩服込んで

jp.kaburobo.driver.KabuRoboDriver

をコピって、ちょっと改造してみました。

カブロボ実行後に注文結果をCVS形式で吐き出します。

もうちょっと工夫すれば、注文の勝率もでるかな。。。


startメソッド内で

        logger.log(Level.INFO, strHistory, "history");

        //ここから
        InformationManager infoManager = investmentAgent.getInformationManager();
        timeSetting.setTime(date);
            
        PrintWriter myout = new PrintWriter(
            new FileWriter("out/result.csv")
            //System.out
            );
        List list = investmentAgent.getOrderResult();
        myout.println(
            "日付,コード,名称,数量,金額"
             );
        for(int i=0; i<list.size(); i++){

OrderResult result = (OrderResult)list.get(i); Calendar cal = result.getDate(); Stock stock = StockListManager.getInstance().getStock(result.getStockCode()); IndexInformation indexInfo = infoManager.getIndexInformationMonthly(stock); long lotSize = indexInfo.getTradingLotSize(); myout.println( "" + (cal != null ? dateFormat.format(cal.getTime()) : "") + "," + stock.getCode() + "," + stock.getName() + "," + result.getNumber() * lotSize + "," + result.getSuccessPrice() ); } myout.flush(); //ここまで } catch (Exception e) { logger.log(Level.INFO, e.getClass().getName(), e); }

[]ルール改正の影響 02:59

http://www.ringolab.com/note/kaburobo/archives/002644.html

範囲を超えた分の注文数を 0として処理をいたしますので、これまでのロボットをそのままお使いいただいても、動作しなくなることはありません。


ちょっと試してみたら以下の注文は、1.2.4ではOKだったが、1.2.5でダメになったもよう。

order.setQuantityByNumber(9999999);//十分に大きな数


「持ち株を売っぱらって、次の株を買う」というときに、

イチイチ総資産額を計算して、2倍を超えない安全圏で注文しないといけないのがめんどいカモ。

成行だと注文決まるまで、厳密な総資産が出ない。

(この注文はイキにして次の注文から枚数0にすればいいのに)

[]メソッド名などに日本語は使えないらしい 02:15

http://www.ringolab.com/note/kaburobo/archives/002675.html

試してみたら、日本語メソッドはいいけど、,箸△魯瀬瓩辰櫃ぁ


Antでjavacのencoding指定しているなら、

WinでもLinuxでも文字コードでエラーになることないと思われますが。。。

(これでダメってのは、ロボット登録時のエンコードは何に使っているのだろう???)


クラス名が日本語の場合でも、ZIPにするときとUNZIPにするときの(ファイル名の)エンコードを指定すれば行けるとおもう(zip/unzipタスクのencoding、jar/unjarの場合はデフォルトUTF-8)。


まあいいか。。。。使わないし。。。

[]PHPJavaパフォーマンス比較 15:47

PHP4とJavaパフォーマンス比較

http://www.thinkit.co.jp/free/compare/2/2/1.html


PHP5とJavaパフォーマンス比較

http://www.thinkit.co.jp/free/compare/2/4/1.html


  • PHP5はPHP4より若干遅い
  • 演算やDB処理でJavaの方が早い

PHPの方が早いという話もたまに聞くのですが。。。


こんなコメントもあった

http://d.hatena.ne.jp/nazoking/20041126#1101437438

トラックバック - http://d.hatena.ne.jp/muimy/20041214