ブログトップ 記事一覧 ログイン 無料ブログ開設

とあるMetaTraderの備忘秘録 RSSフィード Twitter

忙しいです。ネタもないし・・・

2009-09-18

MetaTraderにショートカットキーを割当てるAccela.ahk(2)

今日は、AutoHotKey でMetaTraderにキーボードショートカットを割当てる際の特殊なパターンを追加で紹介します。

AutoHotKeyの使い方は、過去記事1過去記事2を参照してください。


MT4のテンプレートをショートカットで呼び出す例。

テンプレートに保存した設定をキータッチで切り替えたい時に使えます。

#1::
  PostMessage, 0x111,35511,0 ;
  WinWaitActive , ahk_class #32770
  Send ADX.tpl{Enter}
  return

このコードは、「Win + 1」を押したら、テンプレート呼び出し命令(35511)を送って、

ダイアログがアクティブになるのを待って(WinWaitActive )

「ADX.tpl」と入力して、Enter を押しています。

キー割り当ての「#1」と、テンプレート名の「ADX.tpl」を書き換えて使ってください。

ちなみに、テンプレート呼び出しメニューは、以下のような誤訳になっています。

日本語UIだけを使っていると、こういう罠に気づかないので注意してください。(笑)

f:id:fai_fx:20090916181416p:image




インジケータやEAを、確認ダイアログ無しで張り付ける例。


EAやインジケータにはMT4上で、「Alt + G」のようなショートカットを割当てることができます。

しかし、普通にAlt + G を押すと、確認の為の設定ダイアログが出てきてしまいます。

これをAutoHotKeyで、OKさせてしまうというコードです。

#2::
  Send !g
  WinWaitActive , ahk_class #32770
  Send {Enter}
  return

このコードは、「Win + 2」を押したら、「Alt + G」(!g)を送って、

ダイアログがアクティブになるのを待って(WinWaitActive )

Enter を押しています。


画像認識してタブやボタンを押す例。


どんなコマンドを送って操作したら良いのかわからない時の最終手段です。

下記の図で、グレーになっている取引タブを押したい場合、

f:id:fai_fx:20090916182238p:image

まず、画面をキャプチャして、グレーになっている取引タブの画像を切り抜いて、TradeTab.bmpという名前で、Accela.ahkと同じフォルダに置きます。

f:id:fai_fx:20090916182552p:image

コードは、

#3::
  ImageSearch, FoundX, FoundY, 0,0, A_ScreenWidth, A_ScreenHeight, TradeTab.bmp
  if ErrorLevel = 2
    MsgBox Could not conduct the search.(TradeTab.bmp Not Found?)
    else if ErrorLevel = 0
  {
    ;MsgBox The BMP was found at %FoundX%x%FoundY%.
    Click %FoundX%, %FoundY%
  }
  return

と書きます。

「Win + 3」が押されたら、「TradeTab.bmp」という画像と一致する場所を画面内から探し出し、クリックする..というものです。

かなり原始的な手法ですが、いざという時に役立つことがあるので、参考にしてください。

harupongharupong 2009/09/22 14:18 便利なスクリプトの紹介ありがとうございます。Accela.ahkの『1~9で時間足変更』と、
この記事で紹介されてる『画像認識してクリック』がMTの不満の大半を解消してくれそうです。
キーボードだけでチャートの通貨ペア・時間足を切り替えられるのは本当に便利です。ありがとうございます。

ゆくゆくは『タブを矢印キーで自由に行き来』のような機能がAutohotkeyでできるといいなぁと思います。
(内部的にはキーイベント発生→白色タブのX値Y値を検知→矢印キーに応じてX値を増減した地点にカーソル移動→クリック、といったところでしょうか)

fai_fxfai_fx 2009/09/23 00:39 どういたしましてです。
今日の日記にも書きましたが、チャート切り替えは、Ctrl+TABで十分かなぁと思っています。唯一の不満は、タブ順に変わらないことなので、タブ順に変わるようにするための、原始的なスクリプトを用意しました。

参考まで。

toytoy 2013/03/06 22:04 XeMarkets つこてる人おる? accela つかえんと儲かるもんもghfgfn

投稿したコメントは管理者が承認するまで公開されません。

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/fai_fx/20090918/1253199800