MetaTrader EA

カスタムインジケータの値を出力するEA


iCustom()関数でカスタムインジケータを使ってEAを作る際、カスタムインジケータのラインインデックスが何番のものを使えばよいかは、インジケータ設定ダイアログの「色の設定」でなんとなくわかります。

下の図は、VQの「色の設定」タブで、#0(インデックス0番)の幅を最大にして表示させた状態のものです。

vq_index.png

色や幅で、下記の表の通りの番号になることがわかります。

0番Yellowライン
1番Green上昇ライン
2番Red下降ライン
3番Yellow↑矢印
4番Aqua↓矢印

使用する番号がわかったら、次にその番号がどのようになればシグナルとするかを知る必要があります。

CustomChecker_EAv2

パラメータIndicatorNameにカスタムインジケータ名を入力すれば、#0~#7までの3本前・2本前・1本前・現在の値をチャート上に出力してくれるEAです。

→CustomChecker_EAv2ダウンロード

下の図をみてください。

vq_index2.png

もし、現在の足の始値の時点で売りシグナル発生にしたい場合は、「4番のShift1がEMPTY_VALUEではない」という条件にすればよいですね。

   double vq4_1 = iCustom(NULL, 0, "VQ", ・・・, 4, 1);

   int sign = 0;
   if(vq4_1 != EMPTY_VALUE) sign = -1;

という感じです。

もし、矢印を使わず赤色ライン確定で売りシグナルにしたい場合はもう少し複雑になります。

   double vq2_1 = iCustom(NULL, 0, "VQ", ・・・, 2, 1);
   double vq2_2 = iCustom(NULL, 0, "VQ", ・・・, 2, 2);
   double vq2_3 = iCustom(NULL, 0, "VQ", ・・・, 2, 3);

   int sign = 0;
   if(vq2_3 == EMPTY_VALUE &&
      vq2_2 != EMPTY_VALUE &&
      vq2_1 != EMPTY_VALUE) sign = -1;

という感じです。

ラインの場合は矢印等とは違い、各バーの間の部分を直線でつないで表示するようになっています。

なので、上記売りシグナルの条件の意味は「3本前と2本前の間は表示なし、かつ、2本前と1本前の間は表示あり」ということになります。

複数のラインインデックスで1本のラインを描画するインジケータの場合で重なって表示している場合は、インデックスの大きいほうが優先して表示され小さいほうは後ろに隠れてしまうので注意してください。(VQの#0黄色ラインのように。)

カスタムインジケータをEAにする方法の関連記事

2014年1月15日|コメント (6)

カテゴリー:MetaTrader EA

シグナル系カスタムインジケーターで自動売買するEA


すごいシグナルインジケータがあるんです!


Aさん:
す、すごいシグナルがあるんです!矢印で売買タイミングを知らせてくれるカスタムインジケータでトレードしているんですが、最近の利益がハンパないんです!
トレーリング機能と時間指定機能つきでバックテスト可能なEAの作成を頼んだ場合、いくらになりますか??

慶次:
新規EA作成と各機能、合計●万円になります。

Aさん:
えええぇぇぇ・・・orz

こんにちわ!
上記のようなやりとり、たまにあります^^;

矢印やドットなどのマークで売買タイミングをお知らせしてくれるカスタムインジケータで、バックテストやフォワードテストをしてみたいと思うときってありますよね?

そんなときは、iCustom()関数でシグナル発生を感知して自動売買をするEAを作成します。でも、EAの作り方がわからない場合は、できる人やEA作成代行業者に頼むことになります。
そこで・・・

シグナルインジケータ用のEAを作成しました!

パラメータで、カスタムインジケータ名を指定して各設定をするだけで、そのシグナルインジケータでのバックテスト・フォワードテストが可能なEAを作成しました。

→ダウンロードはこちら
※2013.07.25 トレーリング部分修正でファイル更新済み

使用できるインジケータの条件として、矢印やドットなどのマークで描画されるシグナル系のインジケータということが大前提です。その他、オブジェクトでの描画ではないことや、リペイントしないこと(リペイントについて理解されている方はOK)などの条件があります。

パラメータ説明

------Main Setting------
Lotsロット数
TakeProfitリミットのPIPS数 0の場合リミットなし
StopLossストップロスのPIPS数 0の場合ストップロスなし
TrailingStopトレーリングのPIPS数 0の場合トレーリングなし
Slippage許容スリッページ
MagicNumberマジックナンバー
------Entry Time Setting------
UseTradeTime時間指定機能使用スイッチ
Trade_StartHourトレード許可開始時間
Trade_StartMinuteトレード許可開始分
Trade_EndHourトレード許可終了時間
Trade_EndMinuteトレード許可終了分
------Signal Setting------
CustomIndicatorName使用するカスタムインジケータ名
BuyEntrySignalIndex買いエントリシグナルの番号
BuyEntrySignalShift買いエントリシグナルのシフト数
SellEntrySignalIndex売りエントリシグナルの番号
SellEntrySignalShift売りエントリシグナルのシフト数
BuyExitSignalIndex買いポジション決済シグナルの番号
BuyExitSignalShift買いポジション決済シグナルのシフト数
SellExitSignalIndex売りポジション決済シグナルの番号
SellExitSignalShift売りポジション決済シグナルのシフト数
------Parameter of Singal Indicator Setting------
Para1カスタムインジケータのパラメータ1つ目
Para2カスタムインジケータのパラメータ2つ目
Para3カスタムインジケータのパラメータ3つ目
:
Para20カスタムインジケータのパラメータ20個目

TakeProfit・StopLoss・TrailingStopで、使用しない機能は0以下の数値を指定します。

BuyEntrySignalIndex・SellEntrySignalIndex・BuyExitSignalIndex・SellExitSignalIndexで使用しないシグナルはマイナスの数値を指定します。

シフト数とは、何本前のローソク足の位置に表示されていたらシグナルとみなすという本数を指定します。0を指定した場合は、現在変動中のローソク足の位置に表示された場合にシグナル発生とみなします。

カスタムインジケータのパラメータは、1つ目から順番に指定していきます。カスタムインジケータのパラメータ数が20個未満の場合、指定するパラメータが余りますが、余った分は無視してください。
(例えば、カスタムインジケータのパラメータ数が5つの場合は、Para6~Para20を無視します)

カスタムインジケータのパラメータのうち、文字列で指定する場合で、トレードに影響するパラメータの場合は、その部分の「extern double」を「extern string」にして、「= 0;」を「= "";」としてコンパイルしてください。

シグナルの番号とは?

カスタムインジケータのシグナルには、0から始まる番号が割り振ってあります。
その番号を調べるには、チャートにそのインジケータをアタッチしたときに出るダイアログの【色の設定】タブをクリックして対応するシグナルの色の#の番号を見ます。色だけでは識別できない場合は、幅を変更してチャートに表示させ、大きさが変わったものを見て識別します。

いろいろと試してみてくださいね^^
でわでわ^^

カスタムインジケータをEAにする方法の関連記事

タグ

2013年6月 8日|コメント (14)

カテゴリー:MetaTrader EA

EA作成ノウハウ本


MetaTrader 4で始める FX自動売買システム作成の教科書

EA作成ノウハウ本【MetaTrader 4で始める FX自動売買システム作成の教科書】
2013年3月15日発売決定!

MetaTrader 4で始める FX自動売買システム作成の教科書
MetaTrader 4で始める FX自動売買システム作成の教科書(amazon.co.jp)

著者紹介

●星野 慶次(ほしの けいじ)
1977年生まれ。2007年にFX投資を始める。MetaTrader 4のEAによる自動売買を知り、MQLを習得。EA作成プログラミングに関するブログを開始。2008年にEA作成代行会社を設立。2009年にEA作成セミナーを名古屋で開催。EA作成代行サイト「Dr.EA」を公開。EA開発チーム「Project V Japan」結成。2012年、「MQLアカデミー」のメイン講師として活動開始。

EA作成ノウハウ本について

こんにちわ!
星野慶次です^^

大変長らくお待たせ致しましたm(_ _;)m
ブログ読者さんからのメッセージやメールで、『EA作成の本は出さないの?』とか『早く小学生でも解るようなEA作成方法についての本を出してください』とのお声を頂き続け、ようやくご期待にお応えできるEA作成入門書を出版させて頂くことができました^^

EAについて

『EAってなに?』という方の為に、少し説明します。
EAとは、Expert Advisor(エキスパートアドバイザー)の略で、自動売買をするソフトです。 MetaTrader(メタトレーダー)というFXなどの取引をするプラットフォーム上で動作します。

EAを作成・編集することができるようになると、FXトレード手法のちょっとしたアイデアをEA化して、バックテストで過去の成績をすぐに調べることができるようになります。
また、無料EAをダウンロードして、より良い成績を出すEAにカスタマイズすることができます。
さらに、優秀なEAが出来上がったら、リアルタイムチャートで稼動させて、24時間自動売買してくれます。
もうPC画面の前にずっと座っている必要が無くなります^^

対象:プログラミング未経験者~

プログラミングをしたことがない方でも、楽しくMetaTrader4(MT4)のEA作成方法をマスターできるようにできるだけ分かりやすくしていますので、無理なくEA作成方法(MQL4プログラミング)を習得できます。

実は私、
・・・
数年前までプログラミング、ド素人でした(汗)

しかし今では、自由自在にEA作成ができるようになり、年間300を超えるEA・インジケータの作成・編集をするプロとして、セミナーやウェブ上でEA作成方法を教えられるまでになりました。

こんな私だからこそ、プログラミング未経験者にも分かるように、EA作成のノウハウをお伝えすることができるのです(^^)v

お住まいの最寄の書店で、一度手に取り内容を確認してみてくださいm(_ _)m

→MetaTrader 4で始める FX自動売買システム作成の教科書(amazon.co.jp)

→【電子書籍】MetaTrader 4で始める FX自動売買システム作成の教科書(PuBooks)

タグ

2013年3月10日|コメント (10)

カテゴリー:MetaTrader EA, 投資書籍

VQとVQ_EAと商材紹介^^;


今回は、VQ(Volatility Quality)というインディケータの紹介です!

私は、FXのインディケータなどをとてもよく研究されている方から教えてもらい、知りました。

ダウンロードはこちら→VQのページ

『VQ_EA』というのがEAで、『VQ』というのがインディケータです。
それぞれのフォルダに入れましょう!
(ダウンロード先参考記事→ダウンロードしたものを使う

インディケータの完成度、EAの完成度ともに抜群だと思います!

が、

・・・

重たいです^^;

これは、インディケータの計算部分で時間がかかっているのだと思います。
これでは、検証作業がなかなか進みません。

そこで、VQの計算部分だけを抽出し、シンプルなEAを作りました。
EAのみで、計算するので検証もスムーズにできます。

バックテスト用のEA(ex4ファイル)ダウンロードはこちら↓
VQSimpleForTest.zip(ex4ファイル)

さらに、このサインにPipShaker(改)を搭載したものを作りました!

バックテスト用のEA(ex4ファイル)ダウンロードはこちら↓
VQSimpleDePSforTest.zip(ex4ファイル)

これで、VQの検証効率が飛躍的にアップしました!

商材紹介終了しました^^;

では、このへんで。

タグ

2008年7月15日|コメント (8)

カテゴリー:MetaTrader EA

PipShakerOne



今回は、PipShakerの単発版、PipShakerOneというEAを作ってみました!

PipShakerの最初のエントリ(日時と売り買い)をパラメータで決定、その後PipShaker作動し、ポジションがなくなれば終了。
といった感じです。


PipShakerOne.zip(ex4ファイル)


パラメータ

第一取引設定
Date1 最初のエントリの時間
buy0sell1 最初のエントリの売りか買いか
(「買い」は0、「売り」は1を入力)

最少単位での設定
MaxLotSize 最大ロット数
LotSize 最初のエントリのロット数
LotIncrement 買い増し時、売り増し時のロット増加数
MaxTotalLots 1方向の合計ロット数の上限
ProfitTarget 目標利益(単位は口座通貨と同じ)

Spacing ポジショニング用スペース(単位:ピプス)

移動平均線設定
TrendTimeFrame 平均線の時間足(1・5・15...)
TrendPeriods 平均線の計算期間

EA設定
comment コメント
MagicNumber マジックナンバー

trailingpips トレイリングストップ(単位:ピプス)
stoploss 損切り値(単位:ピプス)


使用上の注意

EA作動開始から、移動平均線の計算期間分は買い増し売り増しを行なわないので、開始からエントリの間に余裕を持たせてください。


基本的な動き

価格から一番遠いポジションを利益が出ているポジション全体で相殺する感じです。
ポジションが一つになったら、トレイリングで追っかける感じです。

いろいろ試してみてください。


でわ、このへんで。

タグ

2008年5月26日|コメント (11)

カテゴリー:MetaTrader EA

PipShakerV4誕生!!


PipMakerはポジション同士のチームワークで利益を上げていきます。
これは、最大の特徴で強みですが、場合によっては弱点でもあります。

弱点をカバーするために、保有可能ポジション数を少なくすると、
かえってチームワークが機能しなくなり利益が出ません。

なので、ある程度ポジション数は保有できるように、資金量が必要です。
ですが、Micro Lot(0.01ロット)単位なら、必要資金も10分の1になるのでPipMakerを使うには向いているかと思います。


今回は、PipMakerを改造して、『PipShaker』というものを作ることに成功しました!


Micro Lot最少単位での取引(1999~2007)

PipShakerV2の1999-2007年バックテスト結果

9年間での最大ドローダウンが$651.55なので、Micro Lotでも最低資金数十万円は必要のようですね!

さらに、年末の仕掛け的な動きにダマされることが多いようなので、
12月はお休みする『PipShakerV4』を作りました。

リスクを大きめにとって複利での1年ごとのバックテスト結果↓


1999年
PipShakerV4の1999年バックテスト結果年利:188%


2000年
PipShakerV4の2000年バックテスト結果年利:442%


2001年
PipShakerV4の2001年バックテスト結果年利:167%


2002年
PipShakerV4の2002年バックテスト結果年利:242%


2003年
PipShakerV4の2003年バックテスト結果年利:1590%!


2004年
PipShakerV4の2004年バックテスト結果年利:3429%!!


2005年
PipShakerV4の2005年バックテスト結果年利:1572%!


2006年
PipShakerV4の2006年バックテスト結果年利:270%


2007年
PipShakerV4の2007年バックテスト結果年利:48%^^;


早速、デモ開始です。


でわでわ。

タグ

2008年4月16日|コメント (12)

カテゴリー:MetaTrader EA

PipMakerを改造


今回は、PipMakerを改造したもののバックテストをアップしたいと思います。

改造した点

トレンド方向へ動いた時の無駄を無くす等、細かなところを効率化しました。
(トレイリングなど)

常にポジションを持っているのではなく、出来るだけ損切りをしなくてすむような状況を狙い撃ちして、ポジションをとるようにしました。
(フィルタをつけました)


パラメータは同じで、最少ロットでテストしました。

→EURUSDのテスト結果

→USDJPYのテスト結果


まだまだ、良くなりそうですね!
もう少し、研究を続けたいと思います!

また、PMsimpleのパラメータを説明しますね。
MaxLotSize 最大ロット数
LotSize 最少ロット数
Lotincrement 増加ロット数
ProfitTarget 目標利益
TrendProfitTarget トレンド方向の目標利益
Spacing 買い増し売り増しするときの必要ピプス
TrendSpacing トレンド方向のSpacing
TrendTimeFrame 移動平均の使用時間足
TrendPeriods 移動平均の計算期間

といった感じです。
PipMakerV9-1には、ポジションサイジングなどのパラメータがありますがややこしくなってしまいますので、
無くしました^^;


でわこのへんで。

タグ

2008年4月 7日|コメント (15)

カテゴリー:MetaTrader EA

聖杯EAの原石の原石!?PipMaker


前回紹介しました、PipMakerですが、エラーが出てしまうといった報告がありました。

まだ、原因が分かってませんが、PipMakerV9-1のいろいろな機能を削って骨の部分だけのものを作りました。

PMsimple.zip(mq4ファイル)

また、報告お願い致しますm(..)m

タグ

2008年3月28日|コメント (20)

カテゴリー:MetaTrader EA

聖杯EAの原石!!PipMaker


http://www.forex-tsd.com/expert-advisors-metatrader-4/8126-pipmaker-v1-price-action-based-ea.html

で、無料公開されているEA、PipMakerV9-1をデモ取引で試してみました!

PipMakerV9-1.zip(mq4ファイル)


ものすごい勢いで残高が増えて行きます。
デモで体験してみてください!

バックテスト結果を見ると、時々塩漬け状態になるポジションが発生しますが、他のポジションで相殺する感じですね。ポジション同士のチームワークで勝ち続けるシステムです。なので、ある程度の残高が必要になります。

しかし、相殺できないときがありドローダウンが大きくなりすぎると破産します。
そうならないために、掲示板ではいろいろなバージョンがありますが、PipMakerV9-1にランダムエントリーでも利益を出すあのトレイリング(日足ベース14日ATRの三倍のストップ)を付け加えてみました!

PipMakerV9-1トレイリング(日足ベース14日ATRの三倍のストップ)

2000年から2007年のUSDJPY1分足(データはMeta Quates)でのバックテストのグラフです。
(1分足なのでModelling Qualityは25%です)


http://codebase.mql4.com/en/2595
のような1分足のバックテストの特異性を利用したものではないです^^;


8年間で数回(数年に1度の割合)、数ヵ月分の大きな損失が発生しました。

まだ、コードをしっかりと解読していないので、なんともいえませんが、
ほとんどの通貨ペア、時間足で有効なので、
ポジションサイズ、塩漬けの相殺方法または損切り方法次第で最強の聖杯になると思います。

今後、PipMakerのコード解読、戦略研究をしていきたいと思います!


でわ、このへんで。

ありがとうございます。

タグ

2008年3月26日|コメント (31)

カテゴリー:MetaTrader EA

Multi_Lot_Scalperの改造


今回も、Multi_Lot_Scalperの解読のつづきです。

前回作ったものを、少し改良しました!

MetatoreLotScalperV2.zip(mq4ファイル)


今回の改良点

このシステムは、資産が多ければ多いほど有利なシステムなので、
ロット数を少なめにするようにしました。(ドル口座での計算です)

手仕舞いしたバーでは取引しないようにし、
資産のパーセンテージで利食い、損切りできるようにしました。

手仕舞いしたバーでも取引するバージョン
MetatoreLotScalperV4.zip(mq4ファイル)

パラメータで

ProfitPer

は含み益が資産の何%に達したら利食いするという値。

LossPer

は含み損が資産の何%になったら損切りするという値です。

Pips

は何ピプス損失方向に動いたらナンピンするという値です。

xlot

はナンピン時のロット数を、前回の何倍にするかという値です。


シグナルの部分はそのままなのでフィルタをつけるなどして試してみてくださいね。

シグナルはMACDなので、フィルタはストキャスなどのオシレーター系が良いかと思います。


今回は、コードの説明は無いですが、気になる部分などありましたらコメントしてくださいね!


でわ、手短ですがこのへんで^^;


応援お願い致します!
→FXシステムトレード派
→rank応援クリック
→人気ブログランキング

タグ

2008年1月27日|コメント (10)

カテゴリー:MetaTrader EA