ipo自動化
readme.mdが見やすいように、ブログとして公開しときます
SBI IPO申し込み自動化アプリ
seleniumというライブラリを使ってpythonでGoogleChromeを操作してIPO注文を自動化します。
- SBI証券のIPOページを開いて申込ボタンがあれば申し込みます
- 注文数:最小注文数(だいたい100株)
- 価格:ストライクプライス
- IPOポイント:使用しない
- 全部注文するのは怖いので一応このサイトの評価がS,A,B,Cのものを注文します
- サイトの評価やアプリの注文状況を保存するためにGoogleSpreadSheetに履歴を残します。
- 当選した場合の購入意思表示までは自動化できていません
設定方法
Windows10でWSL(Ubuntu18.04)を使用します。Winsows StoreからWSLのUbuntu18.04をインストールしてください。
ファイルの配置(Windowsから直接の場合)
- Windowsのエクスプローラーに下記を入力して、そこに作業用のフォルダを作り、このreadme.mdを含むファイル一式をコピペします。[username]はununtuのユーザ名です
- アクセスできないときは再起動とかごにょごにょするとできるみたいですが、VSCodeを使う場合でやってください
\\wsl$Ubuntu-18.04\home\[username]\
ファイルの配置(VSCodeを使う場合)
- WindowsにVSCodeをインストールします。
- VSCodeを起動して画面左のアイコンが縦に並んでいる中のExtensionsを開きます。
- Extensionsの検索バーに「remote」と入力して「Remote Development」をインストールします。
- インストール後、画面左のアイコンが並んでいる中のRemote Explorerを開きます
- Remote Explorer画面の上部コンボボックスからWSL Targetsを選択して、表示されるWSLの中からUbuntu-18.04を開きます
- VSCodeの画面上部のメニューからView - Terminalを開きます
- Terminalで下記のように入力して作業用のディレクトリを作成します
mkdir work cd work mkdir ipo_auto cd ipo_auto
- VSCodeの画面上部のメニューから File - Open Folderでipo_autoフォルダを開きます
- VSCodeの画面左のアイコンが並んでいる中のExplorerを開き、IPO_AUTOの中に向かってWindowsからこのreadme.mdを含むファイル一式をコピペします
ライブラリのインストール
setup.shを実行してください
sh setup.sh
GoogleSpreadSheetの設定
このサイトを参考にして、GoogleSpreadSheetにプログラムからアクセスできるように認証情報の書かれたjsonファイルを生成します。 生成されたjsonファイルの中身をquicksheet_auth.jsonに書き込んでおきます。 作成した認証情報でアクセスできる共有スプレッドシートのファイル名(このサイトでいうgoogle-python)とシート名(このサイトでいうシート1)を下記のように変更します。この名前はconst.pyで変更可能。 - ファイル名 :google-python -> ipo - シート名 :シート1 -> list
認証情報の設定
SBIのログイン情報、注文パスワードをconst.pyに設定してください。
class SbiSetting(): USERNAME = '***-******' #ログインユーザ名 PASSWORD = '**********' #ログインパスワード TORIHIKI_PASSWORD = '*******' #取引パスワード
テスト
run.shを実行するとアプリケーションが動作してgoogle spread sheetに結果が反映されます
sh run.sh
タスクスケジューラの設定
Windowsから定期的にWSLのプログラムを実行できるようにタスクスケジューラを設定します - kick_autoipo.batの[YOUR_WSL_USER_NAME]をWSLのユーザ名に変更します
wsl -d Ubuntu-18.04 -u [YOUR_WSL_USER_NAME] -- bash ~/work/auto_ipo/run.sh