今回は、複数の条件発生で注文を発注するサンプルソースです。

実際のシステムトレードで単一のインジケータのサインだけで取引することは少ないので、より実践的な内容に近づいています。

一歩づつ、株式自動売買(システムトレード)に近づいていますね。

これまでの記事はこちら

トレードステーション入門(書籍)サンプルソース集 を やってみました 1-3 ( 株式自動売買 / システムトレード の投資戦略)

参考文献:株式投資自動売買で儲ける システムトレード「トレードステーション入門」 (ブルーガイド・グラフィック) ムック 実業之日本社

(トレードステーション入門 P105 サンプルソース4 より)

 

MACDとボリンジャーバンドのシグナルを組み合わせて発注する

MACDは指数平滑移動平均をベースにしたインジケータなので、通常の移動平均よりも早くシグナルを発生しますが、その反面ダマシも多く発生します。

トレードステーションに組み込まれている 「MACDのシグナルで買いエントリー」するストラテジー(投資戦略プログラム)に「ボリンジャバンドのシグナルで買いエントリー」するストラテジ―を組み合わせます。

これにより、ダマシを回避しストラテジーの成績を上げることを試みます。

〇プログラムコード(買いエントリー)

<ELのプロクラムコード ここから>

inputs:
//MACD 用
FastLength( 12 ),
SlowLength( 26 ),
MACDLength( 9 ),
//ボリンジャー用
BollingerPrice( Close ),
TestPriceLBand( Close ),
Length( 20 ),
NumDevsDn( 2 ) ;

variables:
//MACD 用
MyMACD( 0 ),
MACDAvg( 0 ),
MACDDiff( 0 ),
//ボリンジャー用
LowerBand( 0 );

//MACD 用
MyMACD = MACD( Close, FastLength, SlowLength );
MACDAvg = XAverage( MyMACD, MACDLength );
MACDDiff = MyMACD – MACDAvg;

//ボリンジャー用
LowerBand = BollingerBand( BollingerPrice, Length, -NumDevsDn );

if CurrentBar > 2 and MACDDiff crosses over 0 then
If Low[2] < LowerBand then Buy ( !( “MacdLE” ) ) next bar at market;
<ELのプロクラムコード ここまで>

 

ここまで記事を書いたら、寝る時間に成ってしまいました。

明日は朝4時起きなので今日はこの辺で失礼します。

この記事の続きは、近日中に追記します。