Kabu.comリミットマインダー用コード

前の記事で書いた件についてコード開示のリクエストがありましたので、以下に記載します。ある程度エクセル、VBAが使える方が対象です。コードをコピペしていただければ使えます。念のために実際の画像も載せておきます。例示のコードは私が実際に使用しているものとは違います。私のはもっと複雑です。
今回出したのは参考例として載せています。自分の条件でカスタマイズしてください。


株ステーション側ではメニューバーより、
① 『投資情報』⇒
② 『リミットマインダー』⇒
③ 『画面上を右クリック』⇒
④ 『銘柄コード+メモ+条件+通知方法』⇒

リマインダー  

⑤ 『ファイル選択ダイアログボックス』⇒
⑥ 『デスクトップ上のKabuCom.CSV選択』⇒
⑦ あとは、はいボタンを押してリミットマインダーに貼りつけます。以上です。
これで多数の銘柄のトリガーを一括して管理できます。株価がトリガーに達したら、ポップアップと音声で通知されます。

この場合、Kabuステーションは最小化していても通知はポップアップされるので、Kabuステーションを画面上に表示させる必要はありません。

以下コードの説明です。
========================================
① 変数iはループ用のカウンターです。

② 変数endr は最終行を格納する変数です。

③ endr = Cells(Rows.Count, 1).End(xlUp).Rowで変数に最終行を代入しています。

④ Open "C:\Users\●\Desktop\KabuCom.CSV" For Output As #1 の●の部分は各自のパスを指定してください。上記ではデスクトップに、KabuCom.CSVというファイルを作るように指示しています。

⑤ Print #1, "//" はカブコム側の指定文字列です。

⑥ For i = 6 To endr となっているのは、私のシートが6行目からシグナル銘柄を配置しているからです。2行目から配置しているなら2としてください。

⑦ If Cells(i, 29) = "" Then となっているのは、私のシートでは29列目が仕掛け値入力列になっており、値が入っている場合は持越し銘柄となり、アラートの必要がないので除外しています。

⑧ If Cells(i, 20) >= 1 And Cells(i, 20) <= 3 Then となっているのは、私のシートの20列目はストラテジ番号となっており、ストラテジ番号によってトリガーが違ってくるので分岐しています。上記では、ストラテジ番号が1~3の場合の分岐です。

⑨ Print #1, Cells(i, 3) & ",,DPP," & WorksheetFunction.RoundDown(Cells(i, 23) * ●●, 0) のCells(i, 3) は3列目に証券コードが入っています。DDPはカブコム側の指定文字列です。

計算式ですが、私の場合Cells(i, 23)の23列目に現在値(トレード終了してイザナミのシグナルを張り付けた時点では終値)が入っており、その終値の●●%のがトリガー値となっています。たとえば、終値の-3%をトリガー値としたけらばこの●●部分を0.97とします。また、安値×1.05などいろいろと作れます。

⑩ 長ったらしい英文字が入っていますが、カブコム側でポップアップと音声を出すための指定文字列です。

=======================================
Sub Kabucom書出し()
On Error Resume Next
Dim i As Integer
Dim endr As Integer

endr = Cells(Rows.Count, 1).End(xlUp).Row

Open "C:\Users\●\Desktop\KabuCom.CSV" For Output As #1
Print #1, "//"

For i = 6 To endr
If Cells(i, 29) = "" Then
If Cells(i, 20) >= 1 And Cells(i, 20) <= 3 Then

Print #1, Cells(i, 3) & ",,DPP," & WorksheetFunction.RoundDown(Cells(i, 23) * ●●, 0) & ",,,,Screen1=1:Screen1Notice=3:Sound1=1:Sound1Appoint=0:Sound1AppointName=:Screen2=1:Screen2Notice=3:Sound2=1:Sound2Appoint=0:Sound2AppointName="

ElseIf Cells(i, 20) = 7 Or Cells(i, 20) = 8 Then

Print #1, Cells(i, 3) & ",,DPP," & WorksheetFunction.RoundDown(Cells(i, 23) * ●●, 0) & ",,,,Screen1=1:Screen1Notice=3:Sound1=1:Sound1Appoint=0:Sound1AppointName=:Screen2=1:Screen2Notice=3:Sound2=1:Sound2Appoint=0:Sound2AppointName="

ElseIf Cells(i, 20) = 9 Then

Print #1, Cells(i, 3) & ",,DPP," & WorksheetFunction.RoundDown(Cells(i, 23) * ●●, 0) & ",,,,Screen1=1:Screen1Notice=3:Sound1=1:Sound1Appoint=0:Sound1AppointName=:Screen2=1:Screen2Notice=3:Sound2=1:Sound2Appoint=0:Sound2AppointName="

End If
End If
Next
Close #1

Beep
End Sub


コード

ポチっとしていただき、パチ(拍手)して頂くとやる気モリモリです。m(__)m

株式システムトレード ブログランキングへ
にほんブログ村 株ブログ 株 自動売買へ
にほんブログ村

株システムトレードソフトイザナミ
スポンサーサイト

Kabu.comリミットマインダーの活用

これまで仕掛け見逃しでかなり収益の機会を逃してきました。それを改善するために試行錯誤してきました。

以前、VBAのOnTimeで組んだことがありましたが、私のようにザラバでエクセルシートを触るタイプだと、これがなかなかうまくいかない。また楽天RSSは特に寄付き直後はアクセスが集中するのかリアルタイムと誤差も生じます。

取引メインはGMOクリックのスーパーはっちゅう君なのですが、このソフトにはアラート機能がないので、HyperSBIでアラート設定をしていました。しかし、これが1件1件手入力で面倒なんです。HyperSBIにはアラートのCSVインポート機能が無い。それで、いろいろと解決策を練っていましたが、頼もしい助っ人が現れました。
ジャジャーン!Kabu.com の取引ツールKabuステーションです。

Kabuステーションのいいところは、アラートの銘柄、株価、通知方法をCSVでインポートできることです。それで、シグナル銘柄群とトリガー値をVBAでループさせ、CSV出力し、Kabuステーションのリミットマインダーに貼り付けます。これだけです。

この省力化は私にとっては画期的です。私は証券会社口座を9つ持っていますが、それぞれのツールの良いとこ取りができて便利です。
KabuステーションはKabu.comに口座をお持ちで信用口座を開設すれば無料で使えます。
今日は少しマニアックな記事でしたが、このコードが欲しいというかたはコメントいただければお教えします。結構簡単なコードなので。


ポチっとしていただき、パチ(拍手)して頂くとやる気モリモリです。m(__)m

株式システムトレード ブログランキングへ
にほんブログ村 株ブログ 株 自動売買へ
にほんブログ村

株システムトレードソフトイザナミ