« 2012年6月 | トップページ | 2012年8月 »

2012年7月31日 (火)

いよいよ明日からリアルタイム

準備は出来ただろうか????

 自動取引が出来るというハード面はOKだが 

 問題はロジックのソフト面だ・・・・・

それで、間違いを一つ発見した。前に誤発注した事があったけど、それが原因だったようだ。

そんなこんなで、まだまだ自動化には自信がないというのが本音

        ********

 明日はいろんなことを試そう

 1. 抵抗線を上抜けば買い、支持線を下抜けば売りとしていて、通常は

       指示線<<株価<<抵抗線

  となるのだけど

  これを買い持ちで 株価<<指示線 と指示線を株価の上に置けば

  多分、指示線を上抜いたときにはサインが出ないで、こんど落ちてくる時にこの指示線を下抜き、売りサインが出てリカクと成るでしょう。 また下がらずにそのまま騰がっていくならばなお良く、こんどは新たな上昇トレンド線を引いて対応すればその指示線よりも上で売れるかもしれないのだ。

 

| | コメント (0) | トラックバック (1)

2012年7月25日 (水)

RSS風にアレンジしてみれば3

 トレーリングストップも付け加えようと思ったがやめた・・・・

 トレンド線、支持線、抵抗線のストップと時間ストップが既に有るのだから これ以上ストップを増やしても、その分設定項目が多くなり、それが完全な自動で設定値も自動で決めてくれるなら問題はないけど、その都度その都度、裁量で設定していたなら、設定が増えれば増えるほどトラブルの元となる

    ふと思った

 おかさんRSSで色んなことを学ぶまではよいのだけど。これを実際に全てを自動化したなら怖い事になる。

 今の僕のUWSCを使った自動システムならメセージBOXが出て、UWSCがコードを入れて、注文画面を出して、ボタンをクリックして、 と注文している事が目で判る

 もちろん、PCから離れている時に勝手に動いてくれている事が前提だけど、テスト段階ではユックリと注文を出す方が安全だ

 もしも、おかさんRSSで簡単に5銘柄の発注を同時にかつ瞬時にする物を作ってしまったなら、怖くてテストすら出来ない。

 それを、実運用でほったらかしで動かすとなると、100%信頼性のあるロジックのシステムでないといけない、しかも、よほど肝っ玉の据わっている者でないと、裁量取引よりもかえってハラハラするようになるのではないだろうか・・・・・・

        ********

 他のサイトで、エクセル、VBA 初心者でもおかさんRSSを楽に使えるようなソフトはないかと調べたが、内容がおそまつなのに結構なお値段・・・・・・

 これでは初心者には使えない、そして、使えるようにするのにまた料金を取られるだろう

 まぁ、そんなこんなで、8月1日からヤフーのリアル配信が始まるのだから、それに合わせてテストを繰り返し、作り込んで行こう

 今後のブログの内容はそのテストの状況を書く事になるのだけど

 自分の覚書、で読者さんには意味を成さないかもしれない

 しかし、これは、このファイルの使い方の研究でもあり、ファイルを公開したときに参考にしてもらったらよいし

 もちろん、今既に自作している人にもヒントになると思う。

        ********

 一応、誰でも使えるようにするにはどうしたらよいかを考えて作っていきます

 そのためには、ボタンは少ないほうがよいだろうし、設定項目も少ないほうが良いだろう

 まぁ、ロジックごとになんらかの設定は必要なんですが・・・・・

| | コメント (0) | トラックバック (0)

RSS風にアレンジしてみれば2

 おかさんのサンプルシートをみていれば

 時間的なストップも必要だなぁ、トレーリングストップも・・・・・

 なんて 考える

 降順、昇順????

 データの取得方

まぁ参考になる事も多いけど、出来ればよいのであって、従来の自分のやり方、従来の自分のパターンで考え、それにRSSを取り入れればよいのだ

 また、時間的ストップもトレーリングストップも単独ではなく、あるロジックに組み込み使わねばならない(どちらでも良いが裁量の度合い多ければそれぞれ単独で、自動化の度合いが多ければ多いほどロジックに組み込まれるであろう。どちらが良いのではなく人それぞれで使いかっての良いように、儲けが出るように作らねばならない)

        ********

 そんなこんなで、時間的ストップを組み込んでみる

 土曜日に作業をしているのだが、相場のないときも1分毎にSUBが動き転記作業をする

 作業がそこで一旦止まってしまうので煩わしい

 Sheet2に停止用のセルA2を作った。0と入力すれば停止する。

//////////////////////////////

Sub 時間が来れば()

With ThisWorkbook.Worksheets(2)

           If .range("A2") = 0 Then
            
                Exit Sub
               
            End If

//////////////////////////////

 とコードを入れた

        ********

 RSS サンプルシートの方を考えると、トレーリングストップシートに簡単なグラフを付ければ良いと思う

 そして、出来るだけ1つのシート上で監視、コントロール出来ればと思う

 エクセルで出来ているのだから、好きなように書き換えられる。時には間違って大事なセルを消してしまう事もあるけどcoldsweats01・・・・・・・・・・・

        ********

時間的なストップ

 僕のファイルでの考え方

 ある列の1500行から1800行に2:45PMと入れておく(横線を引くのと同じ2:45PMを1580とすれば1580の横線が引ける)

セルCV13: =IF(AND(ROW()>CV$4+11,ROW()<CV$6+13),CV$2,"")

CV$4 : 開始行(1500) 、 CV$6 : 終了行(1800)

CV$2 : ストップ時間(2:45PM)

注 CV列の書式は時刻です   

        *

A列の時間がCV列の2:45PMを超えればそれ以降stopとどこかの列セルに入るようにします。

 セルT13 : =IF(A13>CV13,"stop","")

 それを売買サインの条件式に反映させます。

それで、僕の今回のファイルはドッテンになっているので、もしも2:41PMにドッテンしたなら、その最後に約定した注文はその4分後に決済されてしまいます。

だから、もう一つ同じような列を横に作り

セルCW13=IF(AND(ROW()>CV$4+11,ROW()<CV$6+13),CV$10,"")

CV$10 : これ以降新しい注文に入らない時刻(2:00PM)

 セルU13 :=IF(A13>CW13,"stop","")

 として、これも売買サインの条件式に反映させます。

=IF(D14="","",IF(T14="stop","ストップ",IF(買いの条件,IF(U14="stop","ストップ","買い"),IF(売りの条件,IF(U14="stop","ストップ","売り"),IF(ストップの条件,"ストップ",E13)))))

 今までの売買サインの条件式に色字の部分を付け加えれば出来ました。

 いつかはこういう機能を付け加えなければと思っていたのですが、作ってみると意外と簡単です。

 

| | コメント (0) | トラックバック (0)

2012年7月24日 (火)

RSS風にアレンジしてみれば1

 エクセル初心者のことを考えるとクエリやVBAやUWSCを使わないで出来るのが望ましい

それで、岡三RSSならそれが出来るのではないかと(サインを出させる演算部分が簡単なら出来そうなきもするのだが・・・・・

        ********

 岡三RSSのエクセル個別株発注サンプル (基本) シートがダウンロード出来るのでやってみた

 使用は出来ないが僕のエクセル2000に 必要な式だけを移して、先ほど完成したヤフー用と同じ様式のRSS風エクセルブックを作ってみようと思う

        ********

 とは言っても、僕はプロのプログラマーではないので、ある部分想像しながら(正確ではないという意味、間違っていればごめん)一から勉強していこう

 (単純発注)シートのセルB9に↓ 注文関数の書かれてるセル がある

その式を見てみると、やたら長い

 発注のトリガーは 注文関数があるセルに書かれたとき

'C:\Program Files\Okasan Online Securities Co.,Ltd\岡三RSS\岡三RSS.xla'!

に送られて注文が実行されるのであろう

また、注文関数は現物、信用、信用返済の3つに分かれておりIFでそれら3つがわけられ入っている。

 そして、引数がやたら多い、シートにはその引数の説明が詳しく書いてある。まぁ、自作の自動売買シートにはこれらの説明は必要ない

 決まっている引数は先に関数に書いておけばよいからだ

 今回僕が使うのは信用、信用返済で,それを2つのセルに分けて書いても良く、その方が式が短くなって解り良いであろう

 =IF(条件式1,'C:\Program Files\Okasan Online Securities Co.,Ltd\岡三RSS\岡三RSS.xla'!MARGINORDER(D3,"東証",IF(条件式2,1,0),0,0,D5,"T","","",1,1,パスワード,発注ID),"Locked")

と書けばよいだろ、

 赤字の条件式のところは後でゆっくり考えればよい条件式1はこの信用取引をするかどうか、条件式2は売りか買いか

 青字の発注IDはなんだかややっこしいそお

 発注IDはサンプルシートのVBAをみると発注ID用のSUBがあるのでそれを参考にするのもよいだろう・・・・・・

セルD3には銘柄コードを、セルD5には取引数量を 予め入力しておく

        ********

 これと同じように.信用返済の式を作ります

=IF(条件式2,'C:\Program Files\Okasan Online Securities Co.,Ltd\岡三RSS\岡三RSS.xla'!REPAYMENTORDER(D3,"東証",IF(条件式2,1,0),0,0,D5,"T","","",D20,D21,1,1,パスワード,発注ID),"Locked")

D20  のところは建て単価、D21 のところは建日

ここの処理はサンプルシートをもう一度良く見てどのようになっているか調べないと

建て単価、建日にはPOSITION関数と言うのがあるようだ・・・・

出来た発注用の2つの式は D列の空いているところに入れればよいでしょう

         

| | コメント (0) | トラックバック (0)

2012年7月22日 (日)

岩井コスモス用発注スクリプト9

発注用スクリプトは過去記事に載せた物を岩井コスモの発注画面に合わせて書き換えて行けば出来た。

  UWSCを使った発注の手順は次のようになります。

・ VBAが注文用のメッセージBOXを出す

・ そのメッセージBOX の出現によってUWSC発注用スクリプトが実行されます。

      ・ UWSC発注用スクリプト 内の動き

         1. メッセージBOX の内容(銘柄コード、取引株数)を読み込む

         2. 発注画面の色んなボタンをクリック

         3. 発注画面のテキストBOXに(銘柄コード、取引株数)を入力

         4. 発注画面の終了

         5. エクセルをアクティブにする

 

        ********

2.と4.はそのボタンの座標さえしっかりと押さえておれば問題なし

5.ただ単にエクセル画面のどこかを押させればよい

問題は1.と3.です

2007.5.26(VBA メッセージBOX) 2007.5.27(発注スクリプト)に詳しく書いているのですが

変更部分もあるので肝の部分だけ書いてみます

 VBA メッセージBOXの表示

///////////////////////////////////

Sub 信用買建()

    With ThisWorkbook.Worksheets(2)
   
        i = .range("I10")   '銘柄番号1~5べつのSub内で1分毎に変わるようにしている
                  
   
    '1行目の自動解除 が1で、20行の実際の買いポジションが0で、発注サインがプラスの場合
    '  売り建てます
   
        If .Cells(10, i + 3) > 0 And .Cells(20, i + 3) = 0 And .Cells(1, i + 3) = 1 Then

                    Beep

' メッセージBOX 4行の銘柄名、3行の銘柄コード、5行の株数が入ります
                   
                     MsgBox " 銘柄: " & .Cells(4, i + 3) & vbCr & " 銘柄コード: " & .Cells(3, i + 3) & vbCr & " 株 数: " & .Cells(5, i + 3), vbOKOnly, "++買い建て注文++"
            
                   'ポジションの修正
   
                   .Cells(10, i + 3) = .Cells(10, i + 3) - 1
            
                   .Cells(18, i + 3) = .Cells(18, i + 3) + 1
                  
                   .Cells(19, i + 3) = ""
                   
                  
        End If

    End With

End Sub

///////////////////////////////////

        ********

 UWSC 発注スクリプト

 銘柄コード、株数の部分だけ抜粋 訳があって敢えて、1字毎の入力にしています。

///////////////////////////////////

 

DIM TEMP[13]
DIM Co[8]

EXCELORDERWINDOW = GETID("++買い建て注文++")
TEMP[1] = GETSTR(EXCELORDERWINDOW,1,1)    // メッセージボックス"++売り注文++"の内容をTEMP[1]に

 FOR i = 2 TO 13

  TEMP[i] = TOKEN(" ",TEMP[1])       // ” ”で区切って各項目をTEMP[i] に入れて行く

NEXT

MMV(1548,307,10)
BTN(LEFT,CLICK,1548,307,300)  // テキストBOX クリック
MMV(1548,307,10)

Code=TEMP[6]                  // 銘柄コード

   // 銘柄コード を1文字毎に分ける’7523

  Co[8] = VAL(Code)      
  Co[1] = INT(Co[8]/1000) // 7
  Co[7] = INT(Co[8]/100)   //  75
  Co[2] = Co[7]-Co[1]*10   //  5  
        Co[6] = INT(Co[8]/10)   //  752
   Co[3] = Co[6]-Co[7]*10   //  2
  Co[4] = Co[8]-Co[6]*10   //  3

        Co[1] = Co[1] +48 //キーコード
   Co[2] = Co[2]+48 //キーコード
  Co[3] = Co[3]+48 //キーコード
  Co[4] = Co[4]+48 //キーコード

    BTN(LEFT,CLICK,1548,307,50)//コード入力

 KBD(Co[1],CLICK,50)

  KBD(Co[2],CLICK,50)

  KBD(Co[3],CLICK,50)

  KBD(Co[4],CLICK,50)

MMV(1675,302,100)
BTN(LEFT,CLICK,1675,302,500)   // 変更ボタン クリック

Kabusuu= TEMP[8]                  // 株数300

Co[8] = VAL(Kabusuu)      
  Co[1] = INT(Co[8]/1000) // 0
  Co[7] = INT(Co[8]/100)   //  3
  Co[2] = Co[7]-Co[1]*10   //  3  
        Co[6] = INT(Co[8]/10)   //  30
   Co[3] = Co[6]-Co[7]*10   //  0
  Co[4] = Co[8]-Co[6]*10   //  0

  Co[1] = Co[1] +48 //キーコード0
   Co[2] = Co[2]+48 //キーコード3
  Co[3] = Co[3]+48 //キーコード0
  Co[4] = Co[4]+48 //キーコード0

MMV(166,382,20)
BTN(LEFT,CLICK,166,382,300)   // 数量 テキストBOX

  KBD(Co[1],CLICK,50)   

  KBD(Co[2],CLICK,50)

  KBD(Co[3],CLICK,50)

  KBD(Co[4],CLICK,50)

MMV(417,421,20)
BTN(LEFT,CLICK,417,421,300)   // 成り行き

///////////////////////////////////

 

| | コメント (0) | トラックバック (0)

2012年7月21日 (土)

岩井コスモス用発注スクリプト8

7/17 5銘柄に上手くサインとメッセージBOXが出るかテストしてみた

各銘柄2回ほど繰り返し売り買いのメッセージBOXを出してくれた

VBA の速度はそれ程、気にならなかった

あと、時間のストップや実際のポジションとの整合性なんかを考えて見なければ・・・・・

        *********

これなら使える!!

 ヤフーファイナンス が リアルタイムで配信してくれさえすれば・・・・

 メリットは

      無料!!

      証券会社を選ばない

      Office2000 でも 使える (おかさんは2003以降

         ********

 

 VBAの中身はその人のエクセルの作り方によってセルの位置などが変わってくるので記事にはし難い

具体的な作り方は過去記事 を読んでください

 カテゴリーは PM2:45の自動発注計画

 2007年の10月 ごろの記事です

 ただ、今回はクエリが簡単でVBAでクエリを操作していません転記だけです

 ExcelVBA時間の管理は 1分毎にするといかのようになります

////////////////////////////////////

Private Sub Workbook_Open()

  Dim range As Date, my_time As Date, i As Integer

   range = TimeValue("0:01:00")

   For i = 1 To 150

        my_time = TimeValue("9:20:10") + range * i
        Application.OnTime my_time, "時間が来れば"
       
       
    Next

   For i = 1 To 150

        my_time = TimeValue("12:50:10") + range * i
         Application.OnTime my_time, "時間が来れば"
       
       
    Next

End Sub

////////////////////////////////////

 ヤフー が20分遅れなので TimeValue("9:20:10") で、前場と後場に分けています

1分毎に"時間が来れば"という Sub が実行されます

"時間が来れば"の内に入っているSubの内容は

・ クエリされたデータを各シートに転記

・ サインをシート2に転記

・ シート2でのちょっとした処理

・ 注文のメッセージBOX (4通り)

です。

 次はいよいよUWSCの発注用スクリプトを書こう・・・

| | コメント (0) | トラックバック (0)

2012年7月20日 (金)

テスト中に

 7/18に誤って発注してしまったようだ

 証券会社からの郵送の通知で7/20の昼に気が付いた

 三菱商事 400株 @1595 の買い で

 今日の午前に売りサインに変わっていて後場に入ってからも下がっている

 サイアク

| | コメント (0) | トラックバック (0)

岩井コスモス用発注スクリプト7

 サインを出す段階まできた

 しかし、VBAが遅すぎる(と言うかエクセルシートの再計算の問題だろう・・・・

 5銘柄のトレンド線を引き直し、しかも5銘柄を同時に発注を1分以内にさせるのは無理

 それで、トレンド線の引き直しは、ボタンを設けて、気のむいた時に1シート毎する事にする(まぁ、自動でトレンド線を引くのも難しく、どの線を今選ぶかという問題も有ってトレンド線の自動化は程遠いのであった)

 発注作業も1分毎に1銘柄ずつ順繰りにするようにしよう

ここでの問題はサインが変わった時に発注する様、これまでしたきたのだけど、サインは1分毎に変わるのに発注の処理がその3分後だとその時サインは変わらないので、その部分の処理を新たにしなければならない

        ********

 そんなこんなで

一応サインが出るようになった

Ria1

 無理やりにソフトバンクのところに売りサインを出させた 前のポジションは買い持ちで

サイン通りに売りポジションにするためには買い持ちを返済して、更に売り注文を出さねばならない

発注が-2となっているがそれは売り注文が2回必要という意味だ

売り注文が約定する度にこの値は1増えるようにして絶えず0にすればよい、この値が0だと注文は終ったという意味で、1であるならば買い注文を出しなさいと言うことだ

        ********

 しかし、この場合FXのようには簡単にはいかない。FXは売りか買いの2通りでよかったが個別の場合4通りあるのだ

 また、裁量を挟んでいて、自分の実際のポジションとサインとが合ってない場合も困る、2重注文などの誤発注の元になるからだ

 これには今まで散々悩まされてきた

        ********

 まぁ、これで、やっと今回のタイトル通りに岩井コスモス用発注スクリプトが書ける。

 と

 思ったが、もう一工程、VBAを書かねばならない

 UWSC の引き金となる注文用のメッセージBOXを出させる必要があるのだ 

| | コメント (0) | トラックバック (0)

2012年7月19日 (木)

岩井コスモス用発注スクリプト6

 VBAで自動的にトレンド線が引けたらなぁ~

 なんて考えていたら

 段々と複雑になってきた

 チャートを見て手動なら簡単に引けるのに

        ********

 掛け算ではなく足し算

 直線の式は      

        Y =aX+b

  で

 切片bと傾きaを求めてXで 掛ける だけど

 エクセルで直線を描く場合は

 傾きaを求めて底1から傾きaをつぎつぎと 足して いけばよいのだ

        ********

 例えば

セル100が@1200 の底1

セル120が@1300 の底2

とすれば

 このトレンドの傾きは20個のセルで100増えているので

 (1300-1200)÷(120-100)=5

 5 だとわかる

セル101 は1200+5

セル102 は1200+5+5

セル103 は1200+5+5+5

     ・・・・・・・・・

     ・・・・・・・・・

実際のエクセルの式は

セルCA101 : =CA100+5

と簡単なものとなる

難しいのは底1、底2を求めること  

???????????????????

| | コメント (0) | トラックバック (0)

2012年7月18日 (水)

個別株 チャート

 FX の イワイプロ のチャートならドラッグでトレンドラインが簡単に引ける

 そして、レートが指定の価格まで達したならアラームで知らせてくれる

 個別株のチャートもそれぐらいの機能を持ち、更に自分が引いた、そのラインを株価が超えた時、自動的に注文が発せられるようになっていたら

 なんて思う

 まぁ、それに近づいてきた

| | コメント (0) | トラックバック (2)

岩井コスモス用発注スクリプト5

 先ずロジックを作るためにはまとまった過去データが必要なのだけど、1分足の個別株のデータがまず無い

 日経先物のデータがあったのでそれを4で割って2000円台の株価と仮定して、仕方なく使う

        ********

  それに、支持・抵抗線5本、トレンドライン6本を引くようにした

  しかし、まだ自動では引けない(VBAを使えば引けそうな気もする・・・

  そして

 思ったよりこれらを売り買いのサインにするのは難しい、そのときそのとき、どのラインが有効なのか、判定させないといけない、そして、最終的に売買サインの出る列は一つの列にしなければならない

 トレンドラインの方は下降、上昇とはっきり分かれる、だから下降線を超えたら買い、上昇線を下抜けば売りと簡単に出来る

 しかし、問題は横線、支持になるのか抵抗になるのかその時々で変わる、それを跨いだ後無効にするのか有効か

 無効にした場合

 次のサインとなる基準線は有るのか

 悩ましいぃぃ~

 わけわからん  

| | コメント (0) | トラックバック (0)

2012年7月17日 (火)

岩井コスモス用発注スクリプト4

発注用スクリプトに行く前にデータの取得が先で

気が付けばYahooファイナンス用のエクセルソフトを作り始めていた

それもでも、比較的スムーズに5銘柄のブックが出来た

UWSCでむりやりデータ取得よりクエリでの取得は楽だ

RSSならこの部分はもっと楽だろう

        ********

市販のソフトでは自由に銘柄を選べるように作られていたり、色んな機能が付いていたりする。

でも、使える範囲は人によって限られる。1000の機能100000の機能をたとえ備えていたとしても自分の使えるのは10であったり100であったりだ。 だから残りの99900は残念ながら使えない。

 使おうとすれば更なる知識、勉強が必要だ

 自作の場合、自分に必要な部分だけを用いてシンプルな物を作る事が出来る

RSS も自分に必要な関数を使って簡単なものを作ればよい

        ********

 それで、Yahooファイナンス用のエクセルソフト 仮名『Yahooリアル1』なるものが出来てしまった

 (まだ出来てないけど、頭の中では出来上がっている・・・・

 売れそうだなぁ~

 売らんけど・・・・・・

 ( やってることがマイナーすぎて売れんやろ

 ( UWSCのスクリプトは自分で書かんといかんし

 ( これをRSS用に改良すれば発注の時UWSCを介さないので売り物になる?

        ********

 そんなこんなで、

 直ぐにでもサインを出させて、岩井コスモス用発注スクリプトを完成したいのだけど

 まだ、ロジックの方が白紙の状態だ

 つづく

 

| | コメント (0) | トラックバック (0)

2012年7月14日 (土)

岩井コスモス用発注スクリプト3

 おかさんRSSのセミナーのVTRを見たのだけど

 まだ、自動発注に毛の生えた程度の説明だった

 RSSはすばらしいのだけど普通一般の人がこれを使いこなし自動化まで持っていくのも非常に難しいと思うし、それなりの費用、又は時間がかかるのではないかと思う

 また、自動化が出来たとしてもFXのようなEAに相当するものが必要となるので、またそれに対する費用がかさみ、それで上手く費用以上の儲けが出ればよいのだが、そんな事はまぁ無い・・・・・・・

 そこにはまた色んな問題が起こる

        ********

 * 課 題 *

 ・ 複数銘柄監視

 ・ 1分毎のデータ更新

 ・ 複数銘柄同時発注

 ・ 昼休みの処理

 ・ 休日の処理

 ・ 前日と今日をどのように結ぶか・・・・・

 ・ 判断規準に何を使うか

                    えとせとら

 データの取得は複数銘柄だからクエリを使おう

 判断基準は移動平均なら前日と今日が不連続になり、また寄付きから何分間はサインが出ないだから、移動平均はやめて抵抗線、支持線、トレンドラインを使おう、予め傾きを計算しておけば前日と今日を上手く繋げる事が出来るような気がする

 4本値にしようとすればまた大層だからFXの時のような現在値一本の折れ線でいこう

 焦ってもいけないので

 先ずはヤフーファイナンスから5銘柄データ取得から始める

        ********

 まぁ、ロジックまで考えたら先に進まないので

 先にデータを取得してそれを転記して、仮のサインを出させて発注する というインフラをつくってしまう

 クエリの部分はVBAなしで比較的簡単にでけた

 エクセル1行目に13の間隔をあけて5銘柄のデータ(ヤフーファイナンスの各銘柄の最初の画面)をクエリでのせる

Kue1

 そうすれば1行目に必要なデータが来るのでそれを転記する

Kue3

 一応、20分遅れではあるが3日分のデータ(300*3)が蓄積された

 Sheet2 で5銘柄のサイン、ポジションを監視する

Kue2

 こんな感じ

 つづく

| | コメント (0) | トラックバック (0)

2012年7月13日 (金)

岩井コスモス用発注スクリプト2

 一旦、自動更新株価ボードと岩井コスモ証券のウィンドウを消して、再度ログインして自動更新株価ボードを表示するスクリプトが出来た

 /////////////////////////////////

 // 一旦、自動更新株価ボードと岩井コスモ証券のウィンドウを消す

ボードID=GETID("自動更新株価ボード - Windows Internet Explorer")

CtrlWin(ボードID, CLOSE)         // 自動更新株価ボード終了

// 直ぐに消えればよいのにメッセージが出るので

ACW(GETID("Web ページからのメッセージ","#32770"),800,452,325,186,0)
BTN(LEFT,DOWN,1063,602,297)
MMV(1063,602,15)
BTN(LEFT,UP,1063,602,203)

コスモID=GETID("岩井コスモ証券 ネットトレード - Windows Internet Explorer")

CtrlWin(コスモID, CLOSE)         // 岩井コスモ終了

/////////////////////////////////

// 岩井コスモ ログイン

// IE の表示、その中のリンクアドレスを全て抽出する

// この部分はヘルプのサンプルの流用

IE = CreateOLEObj("InternetExplorer.Application")
IE.Visible = True
IE.Navigate("
https://home.iwaicosmo.co.jp/net/trade/Exchange.html")    // 指定URL
while True                                    // 接続表示待ち
if (! IE.busy) and (IE.readyState=4) then Break
  sleep(0.1)
wend
COM_ERR_IGN  //COMエラー無視
for i = 0 to IE.document.links.length-1 // リンクアドレスを表示
  wks = IE.document.links[i]
  ifb COM_ERR_FLG
    print "エラーが起こったみたい" 
    break
  endif
//  print wks
next
COM_ERR_RET  //エラー処理復帰

MMV(449,445,15)
ACW(GETID("
岩井コスモ証券 ネットトレード - Windows Internet Explorer","IEFrame"),87,87,1095,701,0)
BTN(LEFT,DOWN,449,445,453)
MMV(449,445,62)
BTN(LEFT,UP,449,445,156)

// 口座番号 実際には●のところは数字が一個

MMV(449,445,20)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
MMV(449,444,20)

// パスワード 実際には●のところは数字が一個

MMV(453,555,20)
BTN(LEFT,CLICK,453,555,200)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
KBD(VK_NUMPAD●,CLICK,100)
MMV(455,556,20)

MMV(625,695,20)
BTN(LEFT,CLICK,625,695,200) // ログインボタンクリック
MMV(625,695,20)

SLEEP(2)

ACW(GETID("岩井コスモ証券 ネットトレード - Windows Internet Explorer","IEFrame"),87,87,1095,701,0)
BTN(LEFT,DOWN,129,671,796)  // 自動更新株価ボード を開く
MMV(129,671,46)
BTN(LEFT,UP,129,671,281)

/////////////////////////////////

                                    

                               以上

 UWSCを立ち上げるとこのスクリプトが実行されるようにした

 これで、毎朝、コードを打ってボードを開く煩わしい作業が減りました

 他の証券会社にも応用が利くはずだ

 説明

 赤字、青字で書いてあるのは各ウィンドウの一番上にあるウインドウの名前

 // 指定URL

 ボタンの位置やテキストBOXの位置など証券会社によって違うのでUWSCの記録機能を使い実際の作業をスクリプトにし、一つ一つ確かめながら、茶色の字の部分を書き換えてください

 つづく 

| | コメント (0) | トラックバック (0)

2012年7月11日 (水)

岩井コスモス用発注スクリプト1

インフォーシークファイナンスのサービス終了やヤフーファイナンスの書式の変更などで昔作ったファイルの殆んどが使えなくなってしまった

また、岩井証券の発注の方法もコスモの合併によって変わった

以前のスクリプトが使えない

        ********

 

今まで放置しておいたが、RSSに刺激された

そろそろ動こう

検証のためのデータ取得は今はそれ程しない。また、自動化は長期の場合、手動で注文すればよいのだから、それ程、自動化は必要ではない。FXのスキャルや個別のデイトレにこそ自動化は必要で、その場合ヤフーファイナンス時系列から日足データを取ってもそれ程意味はないだから、昔作ったものはそのまま放置していたのだ・・・・・・

 去年グリーで自動売買を試みたがUWSCの煩わしさデータ発信先の変更などあり、すぐにやめてしまった。

 個別の場合、無料のリアルのデータがない

ところが、今年8月からヤフーファイナンスの個別株のデータの更新が20分から1分になる。今まで有料だったサービスが無料になる。ありがたい!!

        ********

 岩井コスモスの発注を自動化するスクリプトを書いてみる

注文は全て信用の成り行きとする

発注は以下の4通り

1.信用買建

2.信用売建

3.信用買落

4.信用売落

実際にホームページから注文をしようとすると買落ち注文の場合、銘柄コードの入力が出来ない

『 どないせぃちゅうねん!! 

しかし、自動更新株価ボードの詳細表示のテキストBOXならコードの入力が可能だ

試しにUWSCに動きを記録してみる

・ 先に入っているコードを削除

・ コード入力

・ 更新ボタンをクリック

・ 注文ボタンをクリック

  注文種類 という画面が出てくる

・ 5.信用買落のところをクリック

 1回目のテストでは上手く行ったのだが

<>

<>

<>

<エラーが発生しました>  と表示

また、時間が来ると自動更新株価ボードも止まる

        

『おこるでぇ

一から証券会社にログインしなければならないのか・・・・

実際の手動取引でもこういうことが良く起こる改善してもらいたい

まぁ、それ様のスクリプトを書いて時間が来れば再度自動ログインをさせないと

前途多難だ

つづく

| | コメント (0) | トラックバック (0)

2012年7月10日 (火)

おかさんRSS

 YouTube に 『岡三RSSでできること Vol.1

と言うのが有った

全ての発注動作がエクセル上で出来る、エクセル派にとっては嬉しい

例では

買い持ちが1000株既にあって

利食いの指値注文と、損切りの逆指値注文、時間が来てしまったときの成り行き注文を出すという例

簡単なようだが一つの注文が成立した時、残りの注文を取り消せねばならない

        ********

 以前、エクセルの自動発注に岩井証券の発注ツールの逆指値を予め入れた場合を想定して上のようなことをしてみたことがあった。

 そのとき、取り消し用の画面をUWSCで開く工程が一つ増えた 

しかし、演算シートで全ての条件(時間も含めて)の売り買いを決めるのだから、演算シート側でサインが出れば発注サンプルシート側は成り行き注文だけでよいと思う。

まぁ、先は見えてきたのだが、勉強のためVol.2も見ておこう

        ********

 プロの切り口は違うなぁ、値の動きだけ見ているんではないなぁと感心する

 色んな事が勉強できそうだ・・・・

 エクセルの勉強にもなる・・・

 ふむふむ  0から1に変えるとセルの色が変わる 小技 だけどまた使わせてもらおう・・・・

 丁寧な説明だ、岡三としてはエクセルをみんなに勉強してもらいたいんだろうな・・・・

 深いなぁ~

 使いこなせるか

 

| | コメント (0) | トラックバック (0)

2012年7月 9日 (月)

分散投資

 思うに、買いばかりで何銘柄持っていたとしても、なんらヘッジにはならないと思う

 買いオンリーの分散投資はナンセンスだ

 売りと、買いをバランスよく持つべきだ

 まぁ、個別株の場合それが有効な手段だと思うのだが、FXには、それに変わる方法ってあるのだろうか??????

        ********

 資金管理=損切り(損切り幅) と考えている人が多くいるようであるが、僕は少し違うように思う

 資金管理=取引数量(レバレッジ) の方が近いと思う

1トレード当たりの損失許容範囲を自分の資金の何パーセントにするか

そこから逆算して損切り幅によって取引数量を決める

        ********

 FXの勝率100%の超短期取引をする自信のある人なら全力も有りだろうが

平凡な一般的トレンドフォローの場合、自分の能力に合った損失許容範囲内で勝負すべきだ、なにしろ勝率40%なんだから

 また、80%のいくら勝つシステムであったとしても取引数量が大きすぎれば破産する

  

| | コメント (0) | トラックバック (0)

2012年7月 8日 (日)

知恵袋の質問より

>> システムトレードで質問です。よく、エクセルファイルでシステムをつくるとかききますが、それをイー・トレード証券とカ楽天証券につかえるのでしょうか。

        ********

 この質問だったら

 答えは どこの証券会社でも出来るでしょ

 これで終わってしまう

 この質問の仕方は間違っている

 自動発注には色んな方法があるだろうから

 発注の自動化ではエクセルファイルの他に何を組み合わせて使っていますか?

 という質問から始めて

 それをどのように組み合わせていけばよいのか?

 と次第に具体的な質問、取り組みをしていかねばならない

 そのためには、自分が今何をしたいのか、より具体的に把握しなければならない

 リアルタイムのデータの取得?

 演算/売買サインの出し方?

 発注?

 まぁ、この質問は具体的に自動での発注の仕方を尋ねているのであろうが・・・・・

        ********

 今まで僕は楽天証券を使えばRSSで、すぐにでも自動売買が出来るものと思っていた

 違っていたんですね

 RSSでなくとも自動売買は出来るのだが

 複数銘柄の自動売買ならRSSは必要だろうなぁ

 一応、調べてみよう・・・・・

 おかさんのRSSは5000円/35日 もするのか

 おかさんのサイトを見ていたら『システムトレード 「超」楽勝法』というのを紹介していた

 >>内容の一部をこちらからご覧いただけます

 見てみる

        ********

 ふむふむ

 基本エクセルだからやっていることは同じだな

 テンプレートはMACD用、移動平均用と一つ一つシートに分けているネ

 自分は一つのシートに色んなものを入れすぎかもしれないなぁ

 しかし、1シート1銘柄だから複数銘柄を同時にしようとすればBOOKにする必要があるね

 そして、同時に複数銘柄の発注が出来るかどうか

 その一点だけを調べる

 まぁ、エクセル派の僕としたらエクセル(VBAを含む)でここまで出来るというのは嬉しい

 関数マニュアルがあるので一応全て目を通そう

        ********

 複数処理の方法までは書いていなかった

しかし、よくよく考えると『同時に複数銘柄の発注が出来るかどうか』という質問もピントがずれている。発注の関数があってそれで発注がなされるのだから、その関数を複数のセルに複数書けば出来る。

 RSSはリアルタイムのデータの取得と発注の部分であるから(関数もそれようのものばかり)

 それ以外のエクセルの演算の部分は今までの僕のエクセルシートを応用すればよいだろう

 8月からYahooファイナンスが個別株のリアルタイムのデータ配信を無料で始めるとのことである。また、岩井証券から岩井コスモにかわり発注画面が大きく変わったのでそれにあわせてUWSCのスクリプトも一から作り直さねばならない

 Yahooファイナンスのデータ取得は複数ならクエリを使い、1銘柄限定ならUWSCでいけるだろう

 問題はYahooファイナンスのデータの位置が地震情報などの緊急情報が入った時ずれることだ。

 まぁ、8月に向けてぼちぼちと準備をして行こう

 また、RSSへの応用みたいな記事が書けたら有意義だろうが、僕は実際にRSSを使った事がないのと、無料奉仕でおかさんさんや楽天さんの手伝いはしたくない

 どちらかといえば全て無料で出来ますよ、またRSSへの応用も利きますよエクセルだから!! と言いたい

| | コメント (0) | トラックバック (0)

順張りか逆張りか

 トータルで勝っているならどちらでも良いだろ

どちらも、買った株が騰がってくれなければ話にならない

トレンドフォローの問題点は高値掴み、そして取引の60%は負け

損切りのルールで1R以内に損失を抑えているとして利益の方は20%は1R利益程度

あとの20%がトレンドが有って2R以上の利益に育つ。その取引によってトータルプラスになり、トレンドフォローが成り立つ。

        ********

 買いのみで空売りをしていなければ、上昇トレンドが無いような場合、当然2R以上の利益の得られる取引の割合は20%より悪くなりトータルマイナスになる

 だから、空売りの技術は必要だ

 下降トレンドの時、空売りもするトレンドフォローならトータルで勝てると思う

 でも、高値つかみと同じように、底値での空売りをしてしまうことも頻繁に起こるので

 やはり、60%は1Rの負けで20%が1Rの勝ち残り20%が2R以上の勝ちとなるだろう

        *********

 だから、トレンドフォローのシステムトレードをする場合80%が無駄な取引となる。また、1R以内の損切りを10回あたり6回は行わなければならない。

 実際にトレンドフォローの自動売買をしたなら『損切りされるのを待っている』ような感覚になる

 また、2R以上のトレンドが有ってトレーリングストップを架けた場合もなんか損した気になる

 そんなこんなで、トレンドフォローのシステムトレードを続けることは困難だ 

      

 それで、なんとか勝率を上げようと苦労するのである

        ********

 一方、逆張りは一方的なトレンドが有る場合、弱い勝率が80%であっても残り20%で大きくヤラレル

| | コメント (0) | トラックバック (0)

2012年7月 4日 (水)

 トレンドフォローのデイトレ のサイトを見つけた

 そのコメント欄で次のように書かれていた

/////////////////// 

私の必勝法は、一発勝負で必ず勝てる必勝法ではありません。
期待をもってやり始めても、いきなり5連敗する可能性だってあります。(その可能性はあまり高くありませんが。)
5連敗とまでは行かなくても、3連敗もすれば、殆どの人が投げ出してしまうでしょう。

でも、それでも「もくもく」と、確実な損切と、利をできるだけ伸ばすトレードを繰り返すトレーダーがいたなら、どうなるでしょうか?
10万円あった利益をみすみす逃して、5万円のところのトレイリングストップで利確してしまうような、「がっかり」トレードがあっても、それでも「もくもく」とトレードを続けられるトレーダーがいたら、どうなるでしょうか?

もくもくと、ルールのみに従うトレーダー。

そのトレーダーが、例えば30トレードも繰り返して、ふと後ろを振り返ったら何を見るでしょうか?


彼はそこに、見事に積みあがった「利益」を見るはずです。

///////////////////

 なんだか涙が出てくる思いだ

 僕のトレードは損切りのルールもかなり曖昧な状態でルール無視も多いけど基本的には上の考えに近い

 効率は悪いけど、振り返れば「利益」は出ている 

| | コメント (0) | トラックバック (0)

2012年7月 3日 (火)

担ぎ上げ を喰らうも・・・・・

 先月の中程に売り物の期日が来て、しかもそれが全てタイミング良く下がっていたので良い買戻しができたんだけど、先週の初めに調子に乗って3銘柄新たに売ったら全部踏み上げられた。

 そして、先週末はさらにそれらが踏み上げられるのではないかとビビッていたのだが、それ程の上げではなくホッとした。

 逆に持ち株4銘柄が今週に入り少し遅れて騰がりだしたので12%と大きくなっていた凹みが配当も入れて7%に減ってきた。

 ポジションの大まかな内訳は

 マネー 185

 現物買い 350 (4銘柄

 信用買い 45

 信用売り 180 (4銘柄 

 で 買いと売りの割合は  2:1 となっていて 買いの方が多い。

 だから全体が騰がれば普通、資金も増えるようになっている。

 先週の空売りが非常にもったいないようにも感じるんだけど

 それ以上に買い持ちが騰がってくれているので良い。

 まぁ、先週初めは下がると思って売ったのだが、自分の予想なんて当たらない、でも下がっても騰がってもどちらでも良いようなポジションにしている。

 下がれば売りをリカクして、現物を更に買えば良いし

 騰がれば現物を一部リカク、売りを一旦損切りして、上で新たに空売り、現物を一部リカクすればよい

 予測ではなく長い目で見て、その時々の状況や位置に応じて売り、買い、現金のポジションのバランスを採っていけば暴落時でも凹みは少なくて済む、まぁその反面大きい儲けもないのだが・・・・・

 例えば

 下降時には 売り 2 : 買い 2 : 現金 3

 底       売り 1 : 買い 3 : 現金 2  

 上昇時    売り 1 : 買い 2 : 現金 3

 天井      売り 2 : 買い 1 : 現金 4

というような割合でポジションを持てば良いだろう・・・・・

下降時は休めばよいと言われるがNOポジで待つのは辛い、待つのにはそれだけのエネルギーが要る

 だから、休む代わりにポジションのバランスを取って出来るだけ資金を減らさないようにしておけば、好機も巡って来るだろう

| | コメント (0) | トラックバック (0)

« 2012年6月 | トップページ | 2012年8月 »