« 岩井コスモス用発注スクリプト8 | トップページ | RSS風にアレンジしてみれば1 »

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)   // 成り行き

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

 

|

« 岩井コスモス用発注スクリプト8 | トップページ | RSS風にアレンジしてみれば1 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/218459/46370731

この記事へのトラックバック一覧です: 岩井コスモス用発注スクリプト9:

« 岩井コスモス用発注スクリプト8 | トップページ | RSS風にアレンジしてみれば1 »