質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.35%
MQL4

MQL4とは、MT4(MetaTrader4)で用いられるプログラム言語です。MT4は無料で使えるチャートソフトあり、MQL4を使うことで分析ツールのオリジナルスクリプトの作成ができます。

BASIC

BASICとは、手続き型言語の一つ。英語に準した簡易な記述になっており、基本的には初心者向けのプログラミング言語です。1970年代以降のコンピュータでよく使用された言語で、様々な拡張を加え現在も利用されています。

Q&A

0回答

1540閲覧

AutoIT(au3)を用いてtxtファイルを読み取り、ブラウザ操作を行いたい(Internet Explorer)

rokutimpo

総合スコア12

MQL4

MQL4とは、MT4(MetaTrader4)で用いられるプログラム言語です。MT4は無料で使えるチャートソフトあり、MQL4を使うことで分析ツールのオリジナルスクリプトの作成ができます。

BASIC

BASICとは、手続き型言語の一つ。英語に準した簡易な記述になっており、基本的には初心者向けのプログラミング言語です。1970年代以降のコンピュータでよく使用された言語で、様々な拡張を加え現在も利用されています。

0グッド

0クリップ

投稿2020/10/29 13:38

前提・実現したいこと

AutoITを用いて下記の場所に出力したtxtファイルを読み取り
ブラウザをオブジェクトとして扱い、ハイローオーストラリアの自動化を行えるようにしたい。

ダメなことだとはわかっています...。でも、できるようになりたい...です...!

--------<URL>-------------
http://highlowdemo.com/
-=-=-=-=-=-=-=-=-=-=-=

<現在状況>
MT4のMQL4ファイル経由で.txtファイルにて"BUY" , "SELL"を出力しています。
また出力場所のpathは下記のとおりです。

<path> C:Users\t-k-k\AppData\Roaming\MetaQuotes\Terminal\Common\Files\SignalDataForHighLow.txt

ここからtxtファイルをAutoITで読み取り、"BUY"が出力されていればHighエントリーを。
"SELL"が出力されていればLowエントリーを行いたいと考えています。

発生している問題・エラーメッセージ

"C:\Uer\"&@t-k-k&"\AppData\Roaming\MetaQuotes\Terminal\Common\Files\SignalDataForHighLow.txt $FilePath = "C:\User\"&^ERROR Error:Unknown macro.

該当のソースコード

au3

1#include <IE.au3> 2 3HotKeySet ("s", "stopprogram") 4 5While 1 6 7 $sFilePath = "C:\Users\"&@t-k-k&"\AppData\Roaming\MetaQuotes\Terminal\Common\Files\USDJPY5SignalDataForHighLow.txt" 8 9 $hFileOpen = FileOpen($sFilePath) 10 $sFileRead = FileRead($hFileOpen) 11 FileClose($hFileOpen) 12 13 $oIE = _IEAttach("https://trade.highlow.com/", "URL") 14 _IELoadWait($oIE) 15 $oIEactive = WinActivate("取引| HighLowバイナリーオプション - Internet Explorer") 16 17 if $sFileRead == "BUY" Then 18 $oDivs = _IETagNameGetCollection($oIE, "div") 19 For $oDiv In $oDivs 20 If StringInStr($oDiv.classname, "up button") > 0 and $oDiv.innertext = "High" Then 21 _IEAction($oDiv, "click") 22 ExitLoop 23 EndIf 24 Next 25 ElseIf $sFileRead == "SELL" Then 26 $oDivs = _IETagNameGetCollection($oIE, "div") 27 For $oDiv In $oDivs 28 If StringInStr($oDiv.classname, "dwn button") > 0 and $oDiv.innertext = "Low" Then 29 _IEAction($oDiv, "click") 30 ExitLoop 31 EndIf 32 Next 33 EndIf 34 35 36 Sleep(1000) 37 38 39 if $sFileRead == "BUY" or $sFileRead == "SELL" Then 40 _IELinkClickByText ($oIE, "今すぐ購入") 41 42 $FileHandle = FileOpen($sFilePath,2) 43 FileWrite($FileHandle,"entried") 44 FileClose($FileHandle) 45 46 EndIf 47 48 49 50 51 If Mod(@MIN,Random(11,19)) == 0 Then 52 _IELoadWait($oIE) 53 EndIf 54 Sleep (1000) 55WEnd 56 57Func stopprogram() 58 Exit 59EndFunc

試したこと

ファイルのパスのエラーのようだったので7行目の$sFilePath内部の『 "&@t-k-k&" 』の部分を変更してみました。
私のPCの名前です。

  1. 『 "@t-k-k" 』のみに書き換えてみた場合、下記エラーが発生しました。
"C:\User\"&@t-k-k&"\AppData\Roaming\MetaQuotes\Terminal\Common\Files\SignalDataForHighLow.txt $FilePath = "C:\User\"&^ERROR Error:Badly formated variable or macro.

2)『 "t-k-k" 』のみに書き換えた結果、下記エラーが発生しました。

"C:\User\"&@t-k-k&"\AppData\Roaming\MetaQuotes\Terminal\Common\Files\SignalDataForHighLow.txt $FilePath = "C:\User\"&^ERROR Error:Unknown function name.

3)『 t-k-k 』のみに書き換えた結果、下記エラーが発生しました。

For $oDiv In $oDivs For $oDiv In $oDivs^ERROR Error:Variable must be type "Object".

これはゼロディビジョンエラーなんでしょうか...?
困り果てました...。

補足情報(FW/ツールのバージョンなど)

・エディタ:VSCode
・OS:Windows10
・使用ブラウザ:InternetExplorer

☆インストールしたAutoITはx86です。
☆.au3のファイル名は『HighLowTest.au3』で記載しています。

上記内容でもし「こうすればいいよ!」と分かる方がいらっしゃいましたら
ご教示いただけると幸いです。

どうぞよろしくお願いいたします。

<参考にしたURL>
https://fxantenna.com/binary-option-automated-trading/

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.35%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問