UWSCでイザナミを自動的に操作する(2)


UWSCでイザナミを自動的に操作する(2)
2013年5月17日(金) 09:02:33 トレシズ
 
引き続き、UWSCでイザナミを操作する方法の続編です。

ユーザー様からお問い合わせをいただいたこともありテストしながら調べてみましたが、以下のような感じで動作するようです。

■UWSC側(デスクトップにtest.uwsという名前で保存)
----------------------------------------------------
// イザナミのパスを入力
Public IZANAMI_PATH = "C:\Program Files (x86)\izaneo\izaneo.exe"

ifB FOPEN(IZANAMI_PATH, F_EXISTS) = FALSE
MSGBOX("イザナミのパスが間違っています。")
EXITEXIT
endIf

WID = GETID(EXEC(IZANAMI_PATH))
SLEEP(3)

ACW(WID,0,0,1024,768)
SLEEP(0.1)

BTN(left,click,920,110)
//FUKIDASI("開始ボタンはここ", 920, 110, 3)
SLEEP(5)

// ここに株価更新ボタン処理を記述

BTN(left,click,250,70)
//FUKIDASI("検証するボタンはここ", 250, 70, 3)
SLEEP(5)

BTN(left,click,150,110)
//FUKIDASI("設定の読み込み(ファイル)ボタンはここ", 150, 110, 3)
SLEEP(1)

// 設定の読み込み(ファイル)ウィンドウの位置と大きさを調整
PID = GETID(GET_ACTIVE_WIN)
ACW(PID,0,0,400,400)

BTN(left,click,210,140)
//FUKIDASI("ストラテジーはここ", 210, 140, 3)
SLEEP(1)

KBD(VK_ALT,DOWN,100)
KBD(VK_O,CLICK,100)

EXITEXIT

While True
x = G_MOUSE_X; y = G_MOUSE_Y // マウス位置
id = GETID(GET_ACTIVE_WIN) // アクティブウィンドウ
ofx = x - STATUS(id, ST_X) // 相対位置
ofy = y - STATUS(id, ST_Y)
moji = "x="+ofx + ", y="+ofy
Fukidasi(moji, x, y, 3)
Sleep(0.5)
Wend
----------------------------------------------------

上記は座標で操作している感じですが、座標がずれると動作しなくなりますので、

座標を調べる際には「EXITEXIT」の文字を削除しますとマウス位置を確認することができます。

あと、まだ対応できてはいないのですが「株価更新」で「更新する」ボタンが表示される際にクリックする処理が必要になりますね〜。

あと、設定の読み込み(ファイル)ウィンドウでストラテジーを選択する際は、

おそらく上記のようなクリックで操作するよりは、

「ファイル名(N)」にファイル名を入力するような形式にしたほうが汎用性が高くなると思います笑

ファイル名の自動入力が終われば、あとはAlt+Oの同時押しでファイルを読み込めます。

KBD(VK_ALT,DOWN,100)
KBD(VK_O,CLICK,100)

ここまでが自動化できれば、おそらくその後の自動化は難しくなく、おそらく結構簡単にいけると思いますね〜。

あと重要なのはSLEEP(5)などといった部分で、

これは5秒待つという意味ですが、この速度はご自身のPCの処理速度に合わせて適宜変更する必要があるとは思います。

基本的には、動作は遅くなりますが、それでも大き目の数字にしておくとエラーが少なくなると思います笑



・ブログはトレジスタ・ストラテジーオンラインおよびストラテジーの販売者により任意に投稿されるもので、掲載された情報の真実性・価値を保証するものではありません。また、ブログの内容はお客様への情報提供のみを目的としたものであり、特定の有価証券の売買あるいは特定の証券取引の勧誘を目的としたものではありません。ブログに掲載された情報に起因するいかなる損害・損失に対しても弊社株式会社トレジスタおよびブログ投稿者は一切の責任を負いません。掲載内容のご判断は投資家ご自身の判断と自己責任でお願いいたします。