Ruby」タグアーカイブ

Entry 仕掛けの抽象クラス、 ちょっと分かりにくい。 <株入門>

Ruleは四種類あり、その一つEntry仕掛けの構造。 ここの見通しはあまり良くない。   ソースコード./lib/rule/entry/entry.rbを見て分かることは。  エントリ時にチェックする仕組みを用意している。 最終的には、 check_long,check_shortというメソが呼び出されているが、 これは更に具体的な子クラスの方で実装されるらしい。 どうやら、     外からEntryのメソッドcheck_long_e … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

売買ルールは三階層で、オブジェクト指向的な。 <株入門>

遂に売買ルールの実装に到着。   ロジックつーか、売買ルールをRuleという名前で定義してます。 RuleからEntry,Exit,Filter,Stopと4つのクラスが派生する。 これは前、言ってましたよね。 仕掛け、手仕舞い、フィルター、ストップと分類するって、 更に、ブレイクでの仕掛けとかは、Entryから個別の売買ルールクラスが派生する。   という、この二段階で三層構造になっている。 フォルダの構造もそうなってる。 ./lib … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

RubyでのUnitTestについて <株入門>

さて昨日の続き、 これ一般論ですが、 putsで実行結果を出力して、目で確認は、間違いのもと。 目検の代わりに、機械に確認させましょうよ、 正確だし、どうせテストコード書くなら。 で、グーグル先生に訊くと、あるじゃん標準で。 Ruby標準のテスティングフレームワークで手軽にテストコードを書く方法 http://qiita.com/jnchito/items/ff4f7a23addbd8dbc460 経緯はゴチャゴチャあるらしいがどうでも … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , , | コメントする

Tickを扱う。 日経平均先物と違い個別株やや面倒。 <株入門>

インジケータの次は、Tickです。   さて新章。Tick(ティック)というもの。値動きの最小単位のこと。 日経平均先物とかなら5円とか10円とか、1Tickも単純だけど、個別銘柄だと当たり前だが個々。   そのTickというものを実装してゆく。 ここでは、クラスでなくモジュールとして実装している。 つまり関数として機能提供だけできればいい。   まあ、インジケータもそれで良かったとも思うが、 それはさておき、   値幅ごとに、取引単位 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

各インジケータの実装クラスのテスト <株入門>

それでは、Excelも使って計算しつつ、  各インジケータの実装クラスをテストしてみます。     とりあえず、コードそのままコピペします。 Unitテスト用のモジュール何か利用した方が行儀良いと思われますが、 judgeという関数一つ用意するだけで、ここでは充分です。 実行してみて、全てOKならテスト合格です。 あと、nilが挟まったデータでも問題ないかどうかも確認したのですが、 AverageTrueRangeだけはNilがあるとエ … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

真の値幅の平均、ATRというものの実装 <株入門>

サクサク行きましょう。 そもそも、真の値幅の平均(ATR)って何? ググる。 http://104m.jp/analysis/第4章 テクニカル分析実践-:atr/ 「真の値幅」とは、「窓」が発生した場合も考慮した値幅のことです。 真の値幅 = 真の高値 - 真の安値 真の高値 = 当日の高値か、前日の終値のどちらか高い方 真の安値 = 当日の安値か、前日の終値のどちらか安い方 この真の値幅の移動平均がATRだそうです。 ATRは算出期 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

「移動平均の方向」 を引き続き実装 <株入門>

ああ、トレード寄りの話出来る。 早速、 lib/indicator/moving_ average_ direction.rbを眺める。 あれ? 移動平均出てこないじゃん。 区間を+1して、その区間の最初と最後の終値を比べて、傾きを計る。   で、その解説がある。 前日の移動平均が a[0]+ a[1] + a[2] + … + a[n-1] /n 本日が a[1] + a[2] + a[3] + … + a[n … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

移動平均乖離率、実装するぜ!! <株入門>

プログラムな話じゃなくて、トレードの話できて嬉しい。 ./lib/indicator/estrangement.rbを早速眺める。 実装はそっけない。 日足の終値の時系列データから、引数で指定した期間の平均値を求め、 期間の最後の日の終値との乖離率を求める。 乖離率=平均ー最後の日の終値)/平均    をパーセント表示なので、100掛けてます。 プログラム的には、無味乾燥な話。 が、 日々、チャート眺めてて、その日の終値と移動平均の乖離 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

やっと移動平均の実装 <株入門>

ようやく、進みます。 早速./lib/indicator/moving_average.rbを観てゆきます。 大変そっけない、コードです。 でも、ちょっと複雑なことやってます。 1.コンストラクタ   生成するときにはStock(株情報)と以下の情報を渡す。  四本値のどれを使うか(指定がなければ終値)、  移動平均の区間。  ※ちょっと気に食わないのだが、それは後で。 2.calculate_indicatorの実装  Stockから … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする

実装したインジケータの読み込み、Rubyのダサさに呆れる。 <株入門>

やっとインジケータの実装に進みます。 でも、もうひとつだけ、準備があります。   ●移動平均 ●移動平均乖離率 ●移動平均の方向 ●真の値幅の平均(ATR:AverageTrueRange)  を実装するとのこと。おお、期待高まる。   で、最初に約束ごとの確認。 今までどおりのネーミングルールに準じること。 Indicatorの子クラスとしての実装すること。 ま、当たり前だ。   あと、 長短二本の線のクロスとか、複数の指標が必要な場 … 続きを読む

カテゴリー: 株式投資, 株式投資入門はじめました2016.05 | タグ: , , | コメントする