第29回 自作EA 移動平均3本 V4 FX自動売買

第29回 自作EA 移動平均3本 V4 FX自動売買

☆移動平均3本

☆基本仕様

今回は、3本の移動平均線を使う。

1本目は、で、エントリーポイントを知らせる。
確定ロウソク足が、判定用を、上回ったら、買い。
下回ったら、売り。

2本目は、売決済用線で、決済ポイントを知らせる。
確定ロウソク足が、売決済用線を、上回ったら、決済。

3本目は、買決済用線で、決済ポイントを知らせる。
確定ロウソク足が、買決済用線を、下回ったら、決済。

また、今回は反転処理はしない。
条件が満たされるまで待機する。

☆InPut 入力値 設定(変数名 初期値 説明)

//移動平均 設定 判定用
input group “移動平均 判定用”
input ENUM_TIMEFRAMES T_period_M = PERIOD_CURRENT; //判定用 計算対象時間軸
input int MA_period_M = 25; //判定用 計算期間
input int MA_shift_M = 0; //判定用 水平シフト
input ENUM_MA_METHOD MA_method_M = MODE_SMA; //判定用 平滑化の種類
input ENUM_APPLIED_PRICE MA_applied_M = PRICE_CLOSE; //判定用 価格の種類

//移動平均 設定 売決済用
input group “移動平均 売決済用”
input ENUM_TIMEFRAMES T_period_L = PERIOD_CURRENT; //売決済用 計算対象時間軸
input int MA_period_L = 4; //売決済用 計算期間
input int MA_shift_L = 0; //売決済用 水平シフト
input ENUM_MA_METHOD MA_method_L = MODE_SMA; //売決済用 平滑化の種類
input ENUM_APPLIED_PRICE MA_applied_L = PRICE_CLOSE; //売決済用 価格の種類

//移動平均 設定 買決済用
input group “移動平均 買決済用”
input ENUM_TIMEFRAMES T_period_S = PERIOD_CURRENT; //買決済用 計算対象時間軸
input int MA_period_S = 5; //買決済用 計算期間
input int MA_shift_S = 0; //買決済用 水平シフト
input ENUM_MA_METHOD MA_method_S = MODE_SMA; //買決済用 平滑化の種類
input ENUM_APPLIED_PRICE MA_applied_S = PRICE_CLOSE; //買決済用 価格の種類

//プロフィット・ストップロス 設定
//注文時
TP_Bairitu = 0; //注文時プロフィット 0=設定しない 以外=現在価格からの、率 例: 0.005
SL_Bairitu = 0; //注文時ストップロス 0=設定しない 以外=現在価格からの、率 例: 0.005
//ティック時
TP_kin = 100; //ティック時判定 プロフィット 0=設定しない 以外=固定値判定 例: 100
SL_kin = -100; //ティック時判定 ストップロス 0=設定しない 以外=固定値判定 例: -100

//lotとマジックナンバー
input group “ロットとマジックナンバー”
input double Fix_Lot = 0.01; //購入ロット
input ulong MagicNumberA = 123456789; //入力マジックナンバー
input bool log_out = 0; //ログを出力するか
input bool DamiDami = 0; //ダミー設定 最適化無効用

//カスタム結果出力設定
input group “0=無効 1=勝率 2=買勝率 3=売勝率 4=取引数 5=勝率(取引数考慮)”
input int Custom_out = 0; //カスタム出力パラメータ

オプション=4 の、説明。
勝率だけだと、1回勝って、勝率100%などが起こりうるため、取引数を考慮することにした。
ロウソク足の個数を基準に、1000本あったら、
1000*(0.5/100)=5回は、取引していないと、無効となるようにする
input group “取引数考慮=取引数を最低ロウソク足の数の0.5%以上取引回数した”
input double kagen_wariai = 0.5; //取引数考慮 割合% 以下なら結果を無効にする

☆補足説明

TP_Bairituと、SL_Bairituは、ポジション取得時に、それぞれ設定されます。
0の場合は、なし。
0.01ならば、仮に現在価格が、
100円ならば、利確が、101(100+100*0.01)となり
ストップ・ロスが、99(100-100*0.01)となります。

TP_kinと、SL_kinは、固定値を入れます。Tick毎に、判定される。
TP_kinを、1000と入力すると、損益が、1000以上になると、決済されます。
SL_kinに、-100と入力すると、損益が、-100以上になると、決済されます。
SL_kinは、マイナス値を入力してください。

このEAをダウンロードする。

iMA2_v4.mq5

iMA2_v4.ex5

パラメータ設定

バックテスト結果

損益グラフ

Share this content:

コメントを残す

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

Proudly powered by WordPress | Theme: HoneyBee by SpiceThemes