EasyLanguage研究所

マネックス証券が提供する株式トレード&分析ツール「トレードステーション」専用のプログラミング言語、EasyLanguageについて。特にオブジェクト指向型EasyLanguage(OOEL)の情報を中心に。

レーダースクリーンに各銘柄の保有ポジション状況(取得価格、株数、未実現損益など)を表示させる方法

久々に、投稿。レーダースクリーン上に、銘柄ごとの保有ポジション状況(「取得価格」「株数」「損益(P/L)」など)を表示させる、EasyLanguageコードを書いてみました。インジケーターとして作成しております。表示する内容は、トレーディングアプリ『トレ…

銘柄を変えただけで、チャートに適用している分析テクニックやストラテジーのパラメータも自動変更する方法

今回は、EasyLanguage全般に関する小ネタです。(小ネタといいつつ、結構使えると思います)ストラテジーのバックテストで、複数の銘柄ごとに最適なパラメータを得られたけれど、以下のような悩みをお持ちの方、必見。・チャートで銘柄を変えるごとにストラ…

口座の残高や買付可能額を取得できるAccountsProviderクラスについて

オブジェクト指向EasyLanguageで利用可能なAccountsProviderクラスを使うと、口座の情報を取得できます。具体的には、トレードステーションに初期搭載されている「トレードマネージャー」の「口座状況」タブで確認できる情報が中心、といえば分かりやすいと…

AverageFC関数のパラメータを途中でいじったら計算がおかしくなった原因と対策

現在様々な手法でバックテストを実施しているのですが、移動平均線のパラメータ(日数)を期間の途中で切り替えるようなロジックを作りたくてストラテジーを書いてみたら、AverageFC関数の計算結果がおかしくなりましたorz原因と解決策をメモしておきますの…

WebBrowserクラスを発見したので自作ブラウザをワークスペース上に表示させてみました

トレードステーションに初期搭載されているトレーディングアプリの中に「ブラウザ」があります。URLを入力するとそのページがワークスペース内で表示されるだけなので、正直これだけなら別でブラウザ開いていた方が良いです(笑)しかし、オブジェクト指向Ea…

TrendLineクラスでEasyLanguageからトレンドラインを引く(マニュアル掲載コードの修正版あり)

オブジェクト指向EasyLanguageのTrendLineクラスを使うと、EasyLanguage上から自動でトレンドラインを引く事ができます。トレンドラインは、通常のEasyLanguageでもTL_Newで引く事ができますが、TrenLineクラスの方は開始位置と終了位置を「現在の足から●個…

関数の引数やクラスのプロパティの型(クラス)が分からない→そうだGetTypeを使おう

トレードステーション標準のマニュアルって、関数の引数やクラスのプロパティの型が「Object」になっている事、多いです。Objectはあらゆるクラスの基底クラスなので、「実際の型(クラス)は何なの?」と調べたい時は、ObjectクラスのメソッドであるGetType…

複数の銘柄コードをEasyLanguageで扱う方法(3)カスタムシンボルリストのファイルを読み込み

前々回と前回で、EasyLanguageで複数の銘柄コードを扱う方法について2つご紹介しました。eltraders.hatenablog.comeltraders.hatenablog.com今回は最終回という事で、固定のカスタムシンボルリストをEasyLanguage上から直接読み込んで、銘柄コード一覧を取…

複数の銘柄コードをEasyLanguageで扱う方法(2)シンボルリスト選択ダイアログの利用

前回の続き。前回は配列で直接定義することで、複数の銘柄コードを扱う方法をご紹介しました。eltraders.hatenablog.com今回は『シンボルリスト』選択ダイアログを利用する方法についてご紹介します。 方法2:『シンボルリスト』選択ダイアログを利用 トレ…

複数の銘柄コードをEasyLanguageで扱う方法(1)配列で直接定義

トレーディングアプリ開発をしていると、EasyLanguage上で複数の銘柄コードを扱いたい場合が出てきます。 複数の銘柄コードに対して、株価情報などの取得を一括で行ないたい ドロップダウンリストで銘柄コード一覧を表示させ、フォーム上で銘柄コードを選択…

ダブルクオーテーションやタブなどの特殊文字を扱うための予約語など

Print出力したり、文字列の検索や置き換えなどをする時、改行やダブルクオーテーションのような特殊文字を扱いたい時に困る場合があります。プログラム言語によっては、エスケープ文字を使ったり文字コード指定の関数を使ったりしますが、EasyLanguageではい…

フォームを拡大縮小した時にDataGridViewの縦幅&横幅も拡大縮小させたい時のレイアウト術【画像あり】

オブジェクト指向EasyLanguage(OOEL)のフォームで、以下のような動作(レイアウト)を実現したい時です。フォームの右下端を広げたら、上部のTextBoxやButtonの位置はそのままで、下部のDataGridViewのみが拡大する感じです。フォームを広げた時はこのよう…

分析テクニックやストラテジーの挿入や削除で発生するAnalysisTechniqueイベントの動きを検証

分析テクニックやストラテジーは、オブジェクト指向EasyLanguageから見るとAnalysisTechniqueクラスとして定義されています。AnalysisTechniqueクラスには「Initialized(挿入時)」「UnInitialized(削除時)」「WorkSpaceSaving(ワークスペース保存時)」…

現在利用できる全ストラテジー名称が取得できるAvailableStrategiesヘルパークラス(ただし英語名のみ?)

そういえばTradeStationで使える全ストラテジーの名称を取得する方法ってないのかしら?と思ってたんですが、「Optimization API」の英語マニュアルを調べている時にたまたま発見。AvailableStrategiesヘルパークラスというものが使えるようです。といっても…

オブジェクト指向EasyLanguageで使えるコレクション型

オブジェクト指向EasyLanguageでは、いくつかのコレクション型クラスが使えるようです。プログラミング経験者であれば、名前で大体どういうものか分かると思います。Vectorクラス:動的配列 Stackクラス:後入れ先出し(LIFO) Queueクラス:先入れ先出し(F…

Average関数とAverageFC関数の処理速度を比較してみた

EasyLanguageで移動平均線の値を計算する時などに利用するAverage関数ですが、・通常版のAverage関数 ・高速版のAverageFC関数という2種類が存在します。「FC系の方がメモリは多少食うが処理速度が早い」とマニュアルに記載されていたので、普段はAverageFC…

個別銘柄の株価データをPriceSeriesProviderクラスで取得してみる

チャート分析ウィンドウを表示させずに任意の期間で個別銘柄の株価データが取得できる方法を探していたところ、PriceSeriesProviderクラスが使えそうだったので試してみました。以下サンプルコードです。銘柄コードや足種や期間などを指定して、印刷ログに株…

夢が広がるオブジェクト指向EasyLanguage(OOEL)

TradeStationのEasyLanguageには、基本的な書き方以外に「オブジェクト指向EasyLanguage(OOEL)」というものが存在します。”オブジェクト指向”は、他のプログラミング言語経験者なら馴染みのある概念だと思いますが、オブジェクト指向EasyLangaugeを使うと…

はじめまして。

はじめまして、当ブログにお越しいただきありがとうございます。自分は最近、マネックス証券が提供している株式トレーディングツール「トレードステーション(TradeStation)」の専用プログラミング言語であるEasyLanguageを使って、株式の自動売買やシステ…