株式投資をするうえで、現在最強のトレードツールは マネックス証券の トレードステーション です。(個人評価)
その、トレードステーションを自由自在に操るには、イージーランゲージ[EasyLanguage]の知識が必要です。
イージーランゲージ[EasyLanguage]?
※すぐに実習(解説)記事に進みたい方は、このページ最初の 目次 3.<実習…> をクリックしてください。
イージーランゲージ[EasyLanguage]はプログラム言語
プログラム言語!? 「そんなの出来るはずない」 「聞いただけで鳥肌が立つ」と思う方が大半ですよね。
EasyLanguageとは?
トレードステーション上のほぼ全てのアクションは、EasyLanguageという独自の言語で構成されます。”Easy”と名付けられている通り、初歩的な英文で記述される非常にシンプルなプログラム言語になります。
例えば、移動平均線がゴールデンクロスした場合に買い注文を出すプログラムは、以下の一文で済むほどシンプルです。
”If FastAvg crosses over SlowAvg then Buy next bar at market ”
出所:https://info.monex.co.jp/tradestation/features/other/ マネックス証券の機能紹介ページ
簡単なんです。だって”Easy”って名前だから。。。。
イージーランゲージ[EasyLanguage]を学ぶには
簡単と言っても、EasyLanguageはプログラム言語です。
しっかり学びたい方におすすめなのが、マネックス証券の公開しているマニュアル
EasyLanguage ホームスタディコース(ガイドブック) です。
https://info.monex.co.jp/tradestation-support/manual.html#01; こちらのページでもらえます。
このブログでは、「EasyLanguage ホームスタディコース」の演習問題を実際に操作しながら解いてゆく、過程を紹介したいと思います。
移動平均交差(ゴールデンクロス)戦略
株式投資やFXなどの、売買シグナルとして最も有名だと思われる、ゴールデンクロスの自動売買プログラムを作成しましょう。
練習問題: *24 移動平均交差
◇学習の目的
ストラテジー関連の予約語を使用してストラテジーを書く。
◇詳細
短期移動平均線が長期起動平均線を上抜いたら買い、下抜いたら売り。ポジショ ンを保持してから任意の足数経過後、そして任意の含み益に到達していなければ、ポジ
ションを決済する。
より実践的な内容になって来ました。
楽しみですね。
EasyLanguage開発環境(エディタ)にコードを書き込みます
※EasyLanguage開発環境を起動させる方法は、この連載1のページ中頃をご覧ください。
#24 Mov Avg Cros という名前で新規にストラテジーを作成します。
Easy Language開発環境を開き、 ファイル ー 新規作成 ー ストラテジー で新規ストラテジーを作成します。
ファイル名は #24 Mov Avg Cros
テンプレートを選択(T)欄は(None)です。
エディターの準備が出来たら、下のプログラムコードを打ち込んでください。
(コードをコピーして貼り付けてもOK)
プログラムコードの中身はこちら===
Input: ShortLen(9), LongLen(18), MinHold(8), MinProf(50);
Vars: ShortMA(0), LongMA(0);
ShortMA = Average(Close, ShortLen);
LongMA = Average(Close, LongLen);
If ShortMA crosses over LongMA then Buy next bar at market;
If ShortMA crosses under LongMA then SellShort next bar at market;
If BarsSinceEntry > MinHold and OpenPositionProfit < MinProf then begin
Sell next bar at market;
BuyToCover next bar at market;
end;
プログラムコードここまで===
スポンサーリンク
貼り付けまたは、書き込みが終わったら、プログラムコードに間違いが無いか、チエックするボタンを押して確認します。(いつものやつですね)
0エラー、0警告ならOK。
誤りがあれば修正し、チエックするボタンを再度押します。
プログラムコードの意味
Input: ShortLen(9), LongLen(18), MinHold(8), MinProf(50);
インプット宣言文で初期値を指定して宣言しています。
- インプット名が ShortLen 初期値は 9 です。
- インプット名が LongLen 初期値は 18 です。
- インプット名が MinHold 初期値は 8 です。
- インプット名が MinProf 初期値は 50 です。
Vars: ShortMA(0), LongMA(0);
変数宣言文で初期値を指定して宣言しています。
- 変数名が ShortMA 初期値は 0 です。
- 変数名が LongMA 初期値は 0 です。
ShortMA = Average(Close, ShortLen);
Average関数を使って短期の移動平均値を代入しています。
LongMA = Average(Close, LongLen);
Average関数を使って長期の移動平均値を代入しています。
If ShortMA crosses over LongMA then Buy next bar at market;
crosses over は 他の値より大きくなるかを検出します。
ShortMA が LongMA を 上抜けした場合
Next bar at market = 次の足の始値 で 買います。
If ShortMA crosses under LongMA then SellShort next bar at market;
crosses under は 他の値より小さくなるかを検出します。
ShortMA が LongMA を 下抜けした場合
Next bar at market = 次の足の始値 で SellShort
SellShort: 新規売り
・ポジションを保持していない場合、新規で売り。
・買いポジションを保持している場合、ドテンして売りポジションを建てる。
If BarsSinceEntry > MinHold and OpenPositionProfit < MinProf then begin
BarsSinceEntry と OpenPositionProfit また新しい言葉が出てきましたね。
そんなときは焦らずに、ヘルプで調べましょう。 Easy Language開発環境エディターの BarsSinceEntry の上で右クリックでしたね。
MinHold はインプットで 初期値は 8 です。
MinProf はインプットで 初期値は 50 です。
Sell next bar at market;
Next bar at market = 次の足の始値 で 買いポジションを決済します。
BuyToCover next bar at market;
Next bar at market = 次の足の始値 で 売りポジションを決済します。
end;
If then begin の終了
チャートにストラテジーを適応させる
チャート上で右クリックし、 ストラテジーを挿入
今回作成した #24 Mov Avg Cros を選択して OKボタンを押します。
矢印と共に Short , Buy の文字が 表示されています。
上下に表示されている 数値 100 , -100 は、その足での ポジション数です。
以上です。
お疲れ様でした。
動画で解説
この続きはこちら。
株価の勢いで売買を判断する。 モメンタム交差の投資戦略をプログラムする。トレードステーションとイージーランゲージ[EasyLanguage]を学び、株式投資で差をつける。25
この記事を書いた人
ゆたかドットらいふ編集部
あしおゆたか
投資歴20年の個人投資家
机上の理論ではなく、実体験に基づいた記事作りをモットーにしています。
スポーツクラブに毎週2日~3日通い、サウナ後の暴飲暴食が趣味。
◇主な投資対象
日本株式
株式ETF(上場投資信託)
日経225先物
日経225先物オプション
◇運営者情報はこちら
スポンサーリンク