記事の更新日:2023年1月9日

 

auカブコム証券「kabuステーション®API」Pythonサンプルコードを丁寧に解説しています。

このブログ記事は下の解説ページの続きです。

auカブコム証券API Pythonで発注する方法を、超初心者向けにゆっくり解説。Page4 トークン取得を関数化 [kabuステーション®API]

 

いよいよ、株の買い注文です。

 

現物株式の買い注文サンプルコード解説

 

さっそく、現物株式の買い注文のサンプルコードを見てゆきましょう。

 

サンプルコードのファイル名は、 kabusapi_sendorder_cash_buy.py です。

 

現物株式の買い注文サンプルコードを、4つの要素に分解しました。

 

1~4の要素に分解しています。

  • 要素1:ライブラリーのインポート
  • 要素2:送信データーの作成
  • 要素3:処理内容の指定
  • 要素4:処理の実行

 

要素1:ライブラリーのインポート

 

要素1では、ライブラリーをインポートしています。

 

ライブラリーとは

 

Pythonの特徴としてライブラリーが豊富であることがよく上げられます。

 

正式なライブラリーの定義は「Python ライブラリーとは」などで検索してみてください。

 

ここでは、「誰かが作ってくれた、汎用性のあるプログラム」このように覚えても良いでしょう。

 

Pythonライブラリは、そのほとんどを無料で使うことが出来ます。

 

AI開発などに繋がる機械学習分野のライブラリが豊富なのも、Python人気に拍車を掛けているようです。

 

import ○□△ の記述で、ライブラリー○□△をインポートすることが出来ます。

 

ライブラリーの解説はこちらのページを参考にしてください。

auカブコム証券API Pythonで発注する方法を、超初心者向けにゆっくり解説。Page2 [kabuステーション®API]

 

要素2:送信データーの作成

 

要素2では、サーバーへ送るデーターを作成しています。

 

今回は発注のサンプルコードなので、発注する株の銘柄指定や指値、購入株式数などを指定しています。

サンプルコード5行目から25行目までで、発注条件を指定。

26行目の json_data = json.dumps(obj).encode(‘utf8’) は、発注条件をJSON形式に変換しています。

 

もう少し詳しく見てゆきましょう。

 

注文発注(現物・信用)のリファレンス

 

注文発注(現物・信用)のリファレンスを確認しましょう。

 

公式ホームページ中央の REST APIリファレンス のリンクをクリックしてください。

 

ページ左の[POST]注文発注(現物・信用)をクリックすると、注文発注のリファレンスが表示されます。

 

サンプルコードとリファレンスを並べて表示させています。

リファレンスの文字が小さくてすいません。

文字が読み取れない場合は、公式リファレンスページを参照してください。

 

 

 

 

 

 

 

json_data = json.dumps(obj).encode(‘utf-8’)

最後にJSON形式に変換して、変数 json_data に格納しています。

 

要素3:処理内容の指定

 

要素3では、処理内容の指定をしています。

 

 

◇url = ‘http://localhost:18080/kabusapi/sendorder’

処理内容を送信するアドレス(url)を指定しています。

このアドレスは、もちろんリファレンスにも記載されています。

 

リファレンスページ右上の[POST]/sendorderをクリックしてください。

 

ここに表示されたURLが、28行目のコードで指定されたURLです。(本番用)

 

 

◇req = urllib.request.Request(url, json_data, method=’POST’)

要素1でインポートした urllib.request の機能を使って、サーバーにデーターを送る指示をしています。

 

◇req.add_header(‘Content-Type’, ‘application/json’)

ヘッダーの指示です。

解説は省きます(ここでは、おまじないだと思ってください。)

 

◇req.add_header(‘X-API-KEY’, ‘ed94b0d34f9441c3931621e55230e402’)

トークンを指定します。

サンプルコードの‘ed94b0d34f9441c3931621e55230e402’は例として記載されています。

実際に発注する際は、新たに有効なトークンを取得する必要があります。

 

要素4:処理の実行

 

要素4では処理を実行しています。

 

要素4の解説は、前ページと同様です。

解説をご覧になりたい方は、下のリンクからPage3に飛んでください。

auカブコム証券API Pythonで発注する方法を、超初心者向けにゆっくり解説。Page3 [kabuステーション®API]

 

実際に発注する

 

実際に発注してみましょう。

 

サンプルコードを少し変更しました。

 

◇変更点

#パスワードPassword  を変数で指定
#トークンtoken_value を変数で指定

 

銘柄コードを変数に格納(1321 野村日経平均/ETF1321)

symbol = ‘1321’

 

コード内に発注リファレンスの説明をコメントして記載

#’SecurityType’: 1, 株式
#’Side’: ‘2’, 売り1 買い2
#’CashMargin’: 1,  信用区分1は現物
#’DelivType’: 2, 受け渡し区分2は預かり金

以下省略

 

正しいパスワードと有効なトークンを変数で指定して、このコードを実行すると、野村日経平均/ETF 1単位が発注されます。

 

kabuステーションの注文約定紹介の画面にも表示され、発注されていることが確認出来ました。

 

テストで発注した場合は、発注の取消を忘れずに行ってください。

auカブコム証券APIで発注した注文も、kabuステーションから取り消すことができます。

 

次に続く

 

ここらで、一息つきましょう。

 

この続きは、新しいページを作成します。

 

次は、信用取引の発注です。

 

 

この記事を書いた人

あしおゆたか

株式投資歴22年のシステムトレーダー(←主な取引手法)

机上の理論ではなく、実体験に基づいた記事作りをモットーにしています。

スポーツクラブに毎週2日~3日通い、サウナ後の暴飲暴食が趣味。

◇主な投資対象
日本株式
株式ETF(上場投資信託)
日経225先物
日経225先物オプション

◇運営者情報はこちら