目次
概要
『最強のFX 1分足スキャルピング』(ぶせな)という本があります。
この本は、エンベロープを使用した手法を紹介しています。
本記事では、この本で使用されているエンベロープの設定がすぐにできるようなインジケーターを作成しました。
この本の手法では、以下のラインを引きます。
・平均移動線
・エンベロープ(偏差が0.10%、0.15%、0.20%、0.25%、0.30%、0.40%)
MT4の制約上、一度で8本のラインまでしか引けないので、インジケーターは2つに分けて作成しました。
ソースコード
平均移動線、偏差0.10%、偏差0.15%、偏差0.20%用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 |
//+------------------------------------------------------------------+ //| ProjectName | //| Copyright 2012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 7 #property indicator_color1 White #property indicator_color2 Red #property indicator_color3 Red #property indicator_color4 Blue #property indicator_color5 Blue #property indicator_color6 Magenta #property indicator_color7 Magenta // 指標バッファ double BufMain[]; double BufP10[]; double BufM10[]; double BufP15[]; double BufM15[]; double BufP20[]; double BufM20[]; // 外部パラメータ extern ENUM_APPLIED_PRICE applied_price=PRICE_CLOSE; extern ENUM_MA_METHOD ma_method=MODE_EMA; extern int ma_period=20; // 初期化関数 int init() { // 指標バッファの割り当て SetIndexBuffer(0,BufMain); SetIndexBuffer(1,BufP10); SetIndexBuffer(2,BufM10); SetIndexBuffer(3,BufP15); SetIndexBuffer(4,BufM15); SetIndexBuffer(5,BufP20); SetIndexBuffer(6,BufM20); SetIndexStyle(0,DRAW_LINE); SetIndexStyle(1,DRAW_LINE); SetIndexStyle(2,DRAW_LINE); SetIndexStyle(3,DRAW_LINE); SetIndexStyle(4,DRAW_LINE); SetIndexStyle(5,DRAW_LINE); SetIndexStyle(6,DRAW_LINE); return(0); } // スタート関数 int start() { int limit=Bars-IndicatorCounted(); for(int i=limit-1; i>=0; i--) { double ma=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0,MODE_MAIN,i); double envelope_P10=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.10,MODE_UPPER,i); double envelope_M10=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.10,MODE_LOWER,i); double envelope_P15=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.15,MODE_UPPER,i); double envelope_M15=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.15,MODE_LOWER,i); double envelope_P20=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.20,MODE_UPPER,i); double envelope_M20=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.20,MODE_LOWER,i); BufMain[i]=ma; BufP10[i]=envelope_P10; BufM10[i]=envelope_M10; BufP15[i]=envelope_P15; BufM15[i]=envelope_M15; BufP20[i]=envelope_P20; BufM20[i]=envelope_M20; } return(0); } //+------------------------------------------------------------------+ |
偏差0.25%、偏差0.30%、偏差0.40%用
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 |
//+------------------------------------------------------------------+ //| ProjectName | //| Copyright 3012, CompanyName | //| http://www.companyname.net | //+------------------------------------------------------------------+ #property indicator_chart_window #property indicator_buffers 6 #property indicator_color1 DeepSkyBlue #property indicator_color2 DeepSkyBlue #property indicator_color3 OrangeRed #property indicator_color4 OrangeRed #property indicator_color5 MediumSpringGreen #property indicator_color6 MediumSpringGreen // 指標バッファ double BufP25[]; double BufM25[]; double BufP30[]; double BufM30[]; double BufP40[]; double BufM40[]; // 外部パラメータ extern ENUM_APPLIED_PRICE applied_price=PRICE_CLOSE; extern ENUM_MA_METHOD ma_method=MODE_EMA; extern int ma_period=20; // 初期化関数 int init() { // 指標バッファの割り当て SetIndexBuffer(0,BufP25); SetIndexBuffer(1,BufM25); SetIndexBuffer(2,BufP30); SetIndexBuffer(3,BufM30); SetIndexBuffer(4,BufP40); SetIndexBuffer(5,BufM40); SetIndexStyle(0,DRAW_LINE); SetIndexStyle(1,DRAW_LINE); SetIndexStyle(2,DRAW_LINE); SetIndexStyle(3,DRAW_LINE); SetIndexStyle(4,DRAW_LINE); SetIndexStyle(5,DRAW_LINE); SetIndexStyle(6,DRAW_LINE); return(0); } // スタート関数 int start() { int limit=Bars-IndicatorCounted(); for(int i=limit-1; i>=0; i--) { double envelope_P25=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.25,MODE_UPPER,i); double envelope_M25=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.25,MODE_LOWER,i); double envelope_P30=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.30,MODE_UPPER,i); double envelope_M30=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.30,MODE_LOWER,i); double envelope_P40=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.40,MODE_UPPER,i); double envelope_M40=iEnvelopes(NULL,0,ma_period,ma_method,0,applied_price,0.40,MODE_LOWER,i); BufP25[i]=envelope_P25; BufM25[i]=envelope_M25; BufP30[i]=envelope_P30; BufM30[i]=envelope_M30; BufP40[i]=envelope_P40; BufM40[i]=envelope_M40; } return(0); } //+------------------------------------------------------------------+ |
インジケーター
(1時間足)
(1分足)
1分足で使用すると、偏差0.25%のラインを超えることがほぼないので、1つ目のインジケーターでことが足りると思われます。
関連記事
~FXを始めてみませんか?~
XMは、口座を開設するだけで、3000円のボーナスが無料でもらえます。
資金はないけど、FXを試しに挑戦してみたい方でも大丈夫です。
(サイト主もXMを使用しています)