Bitcoin 裁定取引と自動取引 abitra.netのブログ

Bitcoinの自動売買のあれこれ

バイナリーオプション(Highlow オーストラリア)で自動売買(Selenium)のやり方 その1

自分用メモ

新しいパソコン購入したのでプログラムの環境構築やらを色々しており、ついでにハイローオーストラリアの自動売買のやり方のご紹介。
あくまで私の方法であってこの方法が完璧ではないと考えます。(もっとクールなやり方あれば教えて下さい。)

※MT4のシグナルの配信との組み合わせアレコレは別途時間があれば書くかも、今回はハイローオーストラリアの自動売買のやり方。

■対象の方
ハイローオーストラリアの自動売買を構築したい人
MT4などでシグナルは出せるんだけどバイナリーの注文は手動の人


■プログラム経験など
少しは必要ですが基礎的な知識があれば大丈夫かと考えます。


■どんな事が出来る。
ブラウザ操作の殆どは可能かと考えます。
googleの認証などが出来ませが。。。(一応突破する方法もあるのですがお金が掛かります。)


■使用するプログラムや環境など
Windows (本当はMacの方が良いのですがMT4などwindowsがメインなので今回はwindowsで)
Ruby ロジックのプログラム
Selenium ブラウザを操作するプログラム
Chrome ブラウザ
Firefox ブラウザ
Chrome又はFirefoxどちらでもいいです。

私の場合は普段のブラウザはChromeなのでSeleniumFirefoxにしています。
違いは特になく好みの問題かと。
firefoxの方は直近のバージョンで大きく仕様が変わったりしている様なので時期(バージョン)によっては躓く可能性が高い。又は前のバージョンを落としてくるなど手間が発生する可能性が高い。
一旦環境構築して動く様になればバージョンを上げなければ問題ないかと。

1. ブラウザのダウンロード
 Chrome又はFirefoxのブラウザをダウンロードしてインストール。

Chrome
https://www.google.com/intl/ja/chrome/

Firefox
https://www.mozilla.org/ja/firefox/new/

2, Ruby のダウンロード

RubyとDevkitをダウンロード
https://rubyinstaller.org/downloads/

バージョンは2.5.5(x64)
PCによってはx86
Devkitが必要になるので一緒にダウンロードできるRuby+Devkit 2.5.5-1 (x64) でいいかなーと。

f:id:hogehoge_kato:20190610013811p:plain


3. Rubyのインストール
Rubyをダウンロードすると "rubyinstaller-devkit-2.5.5-1-x64.exe" があると思うのでインストール。

インストール完了後にコマンドプロンプトを起動して


C:\Users>ruby -v

Rubyがインストールされているか確認。
こんな感じだとOK。

f:id:hogehoge_kato:20190610013831p:plain


4. selenium webdriverのインストール

コマンドプロンプトで以下を入力


gem install selenium-webdriver


ファイヤーウォールでブロックなんちゃら出る場合もあるが、アクセスを許可するでOK
しばらくするとコマンドプロンプトに色々ダウンロードされている様な文字がでるので完了まで待つ。

最後に x(数値) gems installed と表示されると完了。

確認でコマンドプロンプトで "gem list"でselenium webdriverが入っているか確認。


f:id:hogehoge_kato:20190610013904p:plain

↑インストールされている事が確認できればOK



5-1. ChromeDriverのインストール(Chromeの場合)
https://sites.google.com/a/chromium.org/chromedriver/downloads

5-2. Geckodriverのインストール(Firefoxの場合)
https://github.com/mozilla/geckodriver/releases

自身で使用するブラウザによってChromeDriver又はGeckodriverをダウンロードおよびインストールする。

今回はChromeをご案内 Chromeのバージョン: 75.0.3770.80だったのでChromeDriverも75を選択してダウンロード。

f:id:hogehoge_kato:20190610013930p:plain

f:id:hogehoge_kato:20190610013945p:plain

f:id:hogehoge_kato:20190610013955p:plain


ダウンロードしたzipを解凍してchromedriver.exeがあるのでC:\Ruby23\binにコピペ。

Geckodriverの場合も同じでダウンロードしてruby/binに解凍したのをコピペ。

f:id:hogehoge_kato:20190610014014p:plain

これで基本的な準備は完了。

6. seleniumが使えるか確認

require 'selenium-webdriver'

def test 
  url = 'https://env.b4iine.net/' #デモ

  driver = Selenium::WebDriver.for :chrome # ブラウザ起動
  # driver = Selenium::WebDriver.for :firefox # ブラウザ起動 fifefoxの場合はこちらを利用
  wait = Selenium::WebDriver::Wait.new(timeout: 100)
  driver.navigate.to url
  puts "サイトにアクセス開始"
  driver.manage.timeouts.implicit_wait = 100
  ip_x = driver.find_element(:xpath, "/html/body/div[1]/div[3]/div[2]/p[2]/span").text
  useragent = driver.find_element(:xpath, "/html/body/div[1]/div[3]/div[11]/p[2]").text
  
  puts ip_x
  puts useragent
  puts "20秒待機"
  sleep(20)
  puts "ブラウザ落とす"
  driver.quit

end

test

上記コードをselenium_test.rbで保存してコマンドプロンプトで実行


ruby selenium_test.rb

こんな感じでブラウザが立ち上がるのであれば成功。
サイトアクセス先はIPなどを確認するサイトです。
そのサイトにアクセスして自身のIPとUser agentを取得してコマンドプロンプトに表示させます。
20秒間ブラウザを立ち上げて自動的に閉じます。

Seleniumを利用してサイトにアクセスした場合は”Chromeは自動テストソフトウェアによって制御されています。”と表示されます。
f:id:hogehoge_kato:20190610014611p:plain

コマンドプロンプトに自身のIP情報など表示されます。
f:id:hogehoge_kato:20190610014632p:plain


seleniumを利用せずに自身でサイトにアクセスすると何も表示されません。

f:id:hogehoge_kato:20190610014622p:plain


上記プログラムが動作すればハイローオーストラリアの自動売買の下準備完了。

次回実際にハイローオーストラリアの自動売買(selenium)を実際に動かしていきたいと思います。(デモ口座でね。)


****************************

追記 2019年6月11日
ハイローオーストラリア用の自動売買のサンプルプログラム作成しましたので宜しければどうぞー

バイナリーオプション(ハイローオーストラリア)で自動売買(Selenium)ツール作成の方法 その2
abitra.hatenablog.com

****************************