一つ一つのトレードを表すTradeクラスの構造は?
仕掛けと手仕舞いのそれぞれの日付、価格、タイミング(寄り、ザラ場、引け)、
銘柄コード、株数、取引の種類(売りか買いか)、最初に設定したストップ、変更後のストップ、
手仕舞いまでの日数。
をプロパティ(内部データ)として持つ、
ま日数は計算で出せるから要らないと思うのだが、、
で、
損益の結果や、R倍数などを返すメソッドを提供している。
ここでは、取引単位でデータを格納しておくことと、
取引に紐づく結果判定を簡単な計算で返すこと。
だけである。
動作確認も単純である。
理解そのものは容易だと思う。
あんまりここは書くことないので、余談だが。
テストコードというもの。
今回偉いなー坂本先生。と思ったのは、
このような単純なクラスにも関わらず、ちゃんとテストコードを残していること。
動作が沢山あった、これまでのデータ取得のプログラムとは違うにも関わらず。
で、
Rubyでのテストについて興味惹かれたので、ちょっとググる。
https://allabout.co.jp/gm/gc/452071/
RSpecというものと、minitestというものがRubyではサポートされてるようです。
RSpecは新しい書き方また覚えるのですか面倒ですね。
minitestはC++やJavaであるような最低限の機能提供ですね。
クラス分けして、テストも全てチャントするのなら、
IDE(統合開発環境)用意した方がもうラクじゃないかな。
言語の差による、プログラミングの楽しさなんてどうでもいいから、
環境重くても、自動生成含め作業サポートしてくれた方がラクでいい。
クラス図書くのも、テストコード書くのも、一つの環境でまとまってて欲しい。
その分、楽しさが失われるのか?
いや、後でメンテする可能性があるなら、
整然と分かりやすくあって欲しいです。
質問コーナー、お問い合わせは、sanpome.net@gmail.com まで。