注文を出す(サンプルをインポート:成行注文)

Pocket

今回はEasyLanguageのプログラムから実際に注文を出してみます。銘柄のスクリーニングなどは行わずに銘柄決め打ちで注文を出します。今回のプログラムは実際に注文が約定してしまう可能性があります。必ず約定してもかまわない注文か、取引時間外に実行するようにしてください。


注文の出し方はまったくわからないので、EasyLanguageのヘルプを検索してみます。ヘルプを起動して検索キーを押下して、”注文”と入力して検索してください。上の方に出てきた”OrderTickerクラス”が名前からして注文を管理するクラスのようです。開くと下の方にプログラムの例がリンクされているので、まずは、それをインポートしてみます。インポートの仕方は前の記事を参照してください。

OrderTicketのヘルプ画面

プログラムソースを開きます。

トレーディングアプリのチャート分析を起動 → チャート上で右クリックして分析テクニックを挿入(Q)… → 上の方にある”!ex_OrderTicketBuy”を選択してEasyLanguageを編集(E)…をクリック

この状態から実際に注文を入れるには以下の設定変更やプログラムの変更が必要になります。わたしはマネックス証券に口座を持っているので、その前提で記載していますが、もしかしたら証券会社によってもプロパティの設定方法が異なるかもしれません。

  1. iAccount1 “Enter Your Equities Account Number”に口座番号を指定(分析テクニックの設定画面からも指定可能)
  2. iQuantity1(100)に注文数量を指定(分析テクニックの設定画面からも指定可能)
  3. PlaceOrderNow(FALSE)をTRUEに変更(分析テクニックの設定画面からも指定可能)
  4. FundSourceをプログラムから指定
  5. TaxationMethodをプログラムから指定
  6. インジケータ設定の一般タブから”注文発注オブジェクトを有効にする”にチェック

上から三つ目まではプログラムの上部に定義されている変数で、iから始まっているのでインジケータ(分析テクニック)の可変パラメータになります。プログラムで初期値を置き換えることもできますし、実行前にTradeStation側から画面上で変更することも可能です。このインジケータでは口座番号と発注数量とすぐに注文を出すかどうかの設定になります。次の二つの設定項目は少しわかりにくい設定になります。実はこのサンプルプログラムはインポートして三つのパラメータを正しく設定して動かしても動きません。以下のようなエラー画面が出ます。

注文エラー画面

このメッセージだけでは、FundSourceが何を指しているのかわからないと思います。こういった場合ですが、まずはEasyLanguageのヘルプを検索します。この項目はヘルプにはありません。次はgoogleなどの検索エンジンを使って調べます。”EasyLanguage FundSource”で検索すると日本語と英語のTradeStationのヘルプが出てきます。現物か信用取引かの設定のようです。日本語では設定できないので英語の方のヘルプを見ると設定文字列が出ています。以下の文字を設定するようです。

FundSourceの設定
設定文字列 説明
Cash 現物
StandardMargin 制度信用取引
NegotiatedMargin 一般信用取引
COLUMN 信用取引について
信用取引について簡単に説明しておきます。信用取引は現物取引と違い投資家は株を持ちません。証券会社からお金を借りて購入しますが、株は証券会社側が保有して投資家は借金だけをしている形になります。なので金利を支払う必要があります。メリットは実際に口座に入れている金額の3倍の取引が可能です。それと売りから取引することも可能です。売りの場合は取引終了時に買い戻すことになるため、株価が下がっていれば安く購入できるので利益が出ます。デメリットは現物では発生しない金利や逆日歩などが発生(逆日歩に関しては信用買いであれば受け取る側になります)します。それと資金の3倍の取引というレバレッジを利かせて取引した場合はリスクも大きくなります。それとあらかじめ期限が設定されているため、期限が来たら取引を解消する必要があります。信用買いは最大の損失は株券の価値がゼロになることで、損失額としては、株券の価格になります。信用売りの方は期限が来たら期限が来たら買い戻して返済する必要がありますが、理論的株価に上限がないので損失は無限大になります。期限は制度信用の方は6か月と決められていて、一般の方は投資家と証券会社で取り決めした期間になります。制度信用と一般の違いは制度信用の方は証券取引所のお墨付きがついた企業が対象になっていて、信用度の高さから金利が低く設定されています。

次にTaxationMethodですが、こちらは検索してもなかなかヒットしませんでしたが、検索していると、上にDevelopersと出ているTradeStationの英語のマニュアルがヒットすることがあると思います。そこに設定する文字列が出ていました。

TaxationMethodの設定
設定文字列 説明
Tokutei 特定口座
Non-Tokutei 一般口座
Undefined ???

Undefinedが何を指すか不明ですが、口座の種別というか特定か否かを設定するようです。ここでは特定口座として記載します。最後の注文発注オブジェクトを有効にするは、インジケータを挿入したときに一般タブでチェックをつける必要のある項目です。プログラムの変更箇所としては3つの口座番号などのプロパティを設定した上で、以下のソースを”OrderTicket1.Send()”の前に挿入すれば注文可能になります。ここでは現物株を特定口座で取引する場合を想定します。

プログラムを変更したら検証(F3)してください。では、注文を出す操作をします。この注文は指値注文ではなく成行注文で発行されます。市場が開かれると直ちに約定します。約定させたくない場合は注文取消を忘れないようにしてください。

TradeStationのチャート分析を開く → チャート上で右クリックして銘柄コードの設定(Y)… → 銘柄コード(S)を注文対象の銘柄に変更 → チャート上で右クリックして分析テクニックを挿入(Q)… → !ex_OrderTickerBuyを選択して設定ダイアログを表示(F)をONにしてOK押下 → 一般タブの注文発注オブジェクトを有効にするをONにしてOK押下

注文確認画面が出てはいをクリックすると注文が出ます。押した場合は忘れずに注文取消を行ってください。

注文発行後の注文取消

注文をプログラムから出すことができました。プログラムは2行追加しただけなので、掲載しません。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です