2016年3月31日木曜日

10万→10億突破!! ビリオネア量産EA完成!!

だいぶ興奮しています!!

バックテスト結果で億越えは可能でしたが、デリケートな設定が必要でした。
しかしこのEAは放置プレイでの億越えです。
2007年から今日までのロングランでバックテストをしましたが、
メモリー(8GB)のせいなのか、桁数の限界(Win10 64Bit)なのか2010年途中で終了となります。
結果をEXCELに貼り付けることもできないので詳細が分析できません。

純益は10桁、一、十、百、千、万、十万、百万、千万、億、十億
14億円とはしたですね。

億越えのEAの中では一番現実的です。
Longをもう少し極めたいところですね。







10億円EAはこちら

2016年3月29日火曜日

EA MONACO M1 EURUSD これはいい~♪

本日はEA MONACO最近気が付くと運用しているEAはRSIを使っている物が非常に多い。
オシレーターとしての精度が高いので使いやすいからである。
ボリンジャーバンドなどでは、2σを超えた後「実はバンドウォークでーす♪」
とやられるとオシレーターなのかトレンドなのかはっきりしろと言いたくなる事がある。

そこで今回はBAND1分+RSI1分+RSI5分のトリプルシグナルで動くVシステムのEA MONACOである。

勝ち負けの時期はMACAUに似ていますが、安定性はこちらのほうが期待できます。




MONACOはこちら

2016年3月28日月曜日

EA MACAU  EA作成300個記念!!

新しいEAを作るたびに色々な通貨、色々な足で最適化を行っていたのですが、
アイデアに最適化がついて行きません。
先ほど数えてみたら約半年でEAを331個作成していました。
まぁ設定違いやゴミEA、世界初といわれたSMILEなど色々ありました。
懐かしいところでは天空の城の放送にあわせて作られたEAバルスやHPでEAを作れるスクリプトなんてのも作りました。おっと感傷タイムはここまで

今日放出するのは、MACAU EURUSD M1で動かして下さい。
ウイリアム・ギャンの28のルールを意識しました。半分くらいは守っています。


中身はシンプルなRSI SL100 TP200のVシステムです。

MACAUはこちら

EA ADX 47 四連続ベットの回数を変更すると

4Rシステムはエントリー後の損益を利益に変えるためのシステムです。
4回連続でナンピン平均化売買プッシュでエントリー方向を間違えても3回まではフォローできるようにしていました。
なぜはじめと合わせて4回かというところですが、4回目で1+1+2+4で8本エントリーします。
利益から検討すると10本以内が理想的と考えたからです。

しかし、考えただけで検証はしていませんでした。
もしかすると5回がいいかも6回はもっといいかも、7回はもっといいかもしれません。
しかし回数を増やすと完敗した時のドローダウンは大きくなります。
そのさじ加減はどんなものでしょうか。

連続回数を4-7まで設定で選択できるようにしました。
結構大変でしたw
47というと元東京大学の某氏を思い出すのはわたしだけでしょうか

こまかい条件設定を説明します。

バックテストの設定のテスト設定です。
初期証拠金は最低4連続の時は80,000JPy5連続は15万円、6連続は30万円、7連続は60万円は必要になります。

数字の後ろはプルダウンですが「JPY」と手入力してください。
Roundは4-7の数字を入れて下さい。連続フォロー回数です。
上のメモに書いておきました。

Lotsもうえのメモに書いておきました、
上限10万単位の場合 4連は0.12以下 5連は0.06以下 6連は0.03以下 7連は0.01
でお願いします。

Profitはエントリーの幅
VolはADXのエントリーボリュームです。

今回は最終行でADXの30分足で見ていますが、どの足がいいか最適化してみてください。

7連続で2015は負け知らずの結果が出ましたが60万円で六万弱の利益では悲しいですね。
6連続で初期証拠金30万円利益6万円まで確認できました・・・

エントリーシステムとその時間足を最適化すれば無敗のEAができそうです。
難解だったModify()もかなりシンプルに再構築できました。

#property copyright "Copyright 2016/3/28,TACA"
#property link      "http://mt4kyoto.blogspot.jp/"
extern int MAGIC=777;
extern string RoundMemo="Round 4-7";
extern int Round=4;int SubRound;
extern string LotsMemo="Round/MaxLots 4:0.12 5:0.06 6:0.03 7:0.01";
extern double Lots=0.01;
extern double Profit=460;
extern int Vol=20;
double TProfit;double StopLoss;double Entry;double Mode;double ModeOld;
int d;int i;int LB;double LS;double L;datetime TimeOld;double Limit;
void init(){Profit*=Point;Limit=Close[0]*400*MathPow(2,Round-1);
if (Round<6){SubRound=Round;}else{SubRound=Round+1;}}
//---Main Routine---
void OnTick(){if(Time[0]!=TimeOld){TimeOld=Time[0];if(AccountEquity()<Limit){return;}
if(OrdersTotal()==0){
 if(TACAADX(0,1)>Vol){
  if(TACAADX(1,2)<TACAADX(2,2)){if(TACAADX(1,1)>TACAADX(2,1)){EL();}}
  if(TACAADX(1,2)>TACAADX(2,2)){if(TACAADX(1,1)<TACAADX(2,1)){ES();}}
  }}}
  Del();Modify();}
//---Long Entry Routine---
void EL(){Entry=Ask;StopLoss=Ask-Profit*Round;d=OrderSend(NULL,OP_BUY,Lots,Ask,3,StopLoss,Ask+Profit,"Long1",MAGIC,0,clrNONE);
 for(i=0;i<Round-1;i++) {d=OrderSend(NULL,OP_BUYLIMIT,Lots*MathPow(2,i),Ask-Profit*(i+1),3,StopLoss,Ask+Profit,NULL,MAGIC,0,clrNONE);}}
//---Short Entry Routine--- 
void ES(){Entry=Bid;StopLoss=Bid+Profit*Round;d=OrderSend(NULL,OP_SELL,Lots,Bid,3,StopLoss,Bid-Profit,"Short1",MAGIC,0,clrNONE);
 for(i=0;i<Round-1;i++){ d=OrderSend(NULL,OP_SELLLIMIT,Lots*MathPow(2,i),Bid+Profit*(i+1),3,StopLoss,Bid-Profit,NULL,MAGIC,0,clrNONE);}}
//---Modify Routine--- 
void Modify(){Mode=0;for(i=0;i<Round;i++){d=OrderSelect(i,SELECT_BY_POS);Mode+=OrderType();}
if(ModeOld!=Mode){ModeOld=Mode;
d=OrderSelect(0,SELECT_BY_POS);
if(OrderType()==0){TProfit=Entry+(Mode/2-Round+2)*Profit;}else{TProfit=Entry+(SubRound-+MathFloor(Mode/2))*Profit;}
for(i=0;i<Round;i++){d=OrderSelect(i,SELECT_BY_POS);d=OrderModify(OrderTicket(),OrderOpenPrice(),StopLoss,TProfit,0,clrNONE);}}}
//---Del Routine---
void Del(){if (OrdersTotal()!=Round){for(i=OrdersTotal()-1;i>=0;i--){d=OrderSelect(i,SELECT_BY_POS);d=OrderDelete(OrderTicket(),clrNONE);}}}
//---TACA ADX Routine---
double TACAADX(int Modes,int Shift){return(iADX(NULL,30,14,0,Modes,Shift));}

2016年3月26日土曜日

EA Momentum 4R V M1 USDJPY この曲線美!!

※COAと間違えてMomentumを作っていました。大分修正します(~~;)
トレンドの方向をつかむだけなのになかなか難しいところです。
Momentumあたりはどうでしょうか
意外ときれいに出ます。



Momentumはまじない的なことが書かれている書籍も多く見受けられますが、
平均線よりも時間軸を無視し価格の変化をつかみやすいですね。

一時間足平均による一分足4RVシステム 

いろいろなエントリーを考えましたが4Rシステムの一分足の利益幅は400前後が最適値として出てきます。
もしかするとエントリーはサイコロや乱数で決めても同じ値が出るかもしれません。
4Rの一分足は利益幅400前後という固定数を持っているのでしょう。

一時間足の平均の前後の上昇、下降でエントリーすることとしました。
MAの比較に0.05のアドバンテージを与えています。
緩やかな角度の上昇ではエントリーしなような細工です。
チャートもなかなか理論通りの形になってきました。



バックテストに一晩かかりました。
平均足の比較は一番前の足と一番最後の足の比較でしかありません。
Close[]で作ったほうがバックテストが早く終わったかもしれませんね。

pは平均の期間2-5、Profitは利益幅400前後 Advは平均のアドバンテージ0.1-0.7を探すとさらにいい値が見つけられるかもしれません
完成形に近づいてきた気がしますね♪


TACA-MA-4R-Vはこちら

2016年3月25日金曜日

EA 1ACE(ONE ACE) 加速器Vシステム搭載!!

ADXの力かどうかよくわからなくなってきましたが、
Vシステムで最大ロットを割り出し最大ロットを8で割ったロットをエントリーします。
EA名は1/8→ONE Eighth→ワンエイス→1ACEとなりましたv
ADX 4R V M1 USDJPYです。 

Vシステムは加速度的に残高が増減しますが、1/8しているのでその実力はどうでしょうか


バックテストの時に残高が少なくなるとOrderSendErrorがでてもたつく為に非常に時間がかかっていましたが、残高が少なくなるとキャンセルするようにしました。
純資産が4,000を下回ると終了します。
バックテストはJPYで動かしてください。

1ACEはこちら

ADX 4R M1 USDJPYシステム!!ビジュアルモードで確認すると驚愕の事実が!!!

ADXの一分足の成績が思ったより良かったのでADX 4Rを作成しました。
Volは前回よかった27を採用、4Rの幅は580にしました。
もう少し利益が欲しいところですがなかなか素敵です。
さすがはADX様 いままで邪険にしていてごめんね。


と、ここまではいつもの流れなのですがビジュアルモードで動きを確認してみると、
ADXがシグナルを出してエントリーその後数十分から数時間後に利益確定。
利益確定までを短くすればもっとエントリーできるのでは、
いやまてよ、そもそも一分足のADXで数時間後を予想することはできるのだろうか・・・

細かく確認してみると
ADXのシグナル発生 ⇒ エントリー ⇒ シグナル発生x20~100 ⇒ クローズ
なんという事でしょう、全くADXが関与していないことが発覚しました(^^;)

このまま、Vシステムを結合する予定だったのですが、またも予定変更です。



ソースコードでございます。
Modifyルーチンは傑作だと思っております。

#property copyright "Copyright 2016/3/25,TACA"
#property link      "http://mt4kyoto.blogspot.jp/"
extern int MAGIC=747;
extern int Vol=27;
extern double Profit=580;
extern double Lots=0.03;
double TProfit;double StopLoss;double Entry;
double Type[4]={0,0,0,0};
double Mode;double ModeOld;
int d;int i;datetime TimeOld;
int init(){Profit*=Point;return(0);}
//---Main Routine---
void OnTick(){
if(Time[0]!=TimeOld){TimeOld=Time[0];
if(OrdersTotal()==0){
 if(TACAADX(0,1)>Vol){
  if(TACAADX(1,2)<TACAADX(2,2)){if(TACAADX(1,1)>TACAADX(2,1)){EL();}}
  if(TACAADX(1,2)>TACAADX(2,2)){if(TACAADX(1,1)<TACAADX(2,1)){ES();}}
}
}
}
Del();
Modify();
}
//---TACA ADX Routine---
double TACAADX(int Modes,int Shift){return(iADX(NULL,0,14,0,Modes,Shift));}
//---Long Entry Routine---
void EL(){
Entry=Ask;Mode=3;ModeOld=3;StopLoss=Ask-Profit*4;
 d=OrderSend(NULL,OP_BUY    ,Lots,  Ask,    3,StopLoss,Ask+Profit,"Long1",MAGIC,0,Red);
 for(i=0;i<3;i++)
 {d=OrderSend(NULL,OP_BUYLIMIT,Lots*MathPow(2,i),Ask-Profit*(i+1),3,StopLoss,Ask+Profit,"Long"+(i+2),MAGIC,0,Red);}}
//---Short Entry Routine---
void ES(){
Entry=Bid;Mode=7;ModeOld=7;StopLoss=Bid+Profit*4;
 d=OrderSend(NULL,OP_SELL,    Lots,   Bid,    3,StopLoss,Bid-Profit,"Short1",MAGIC,0,Blue);
 for(i=0;i<3;i++){
 d=OrderSend(NULL,OP_SELLLIMIT,Lots*MathPow(2,i),Bid+Profit*(i+1),3,StopLoss,Bid-Profit,"Short"+(i+3),MAGIC,0,Blue);}}
//---Modify Routine---
void Modify(){
for(i=0;i<4;i++){d=OrderSelect(i,SELECT_BY_POS);Type[i]=OrderType();}
if (Type[0]==0){Mode=(Type[1]+Type[2]+Type[3])/2;}
else
{Mode=(1+Type[1]+Type[2]+Type[3])/2+2;}
if(ModeOld!=Mode)
{ModeOld=Mode;
if (Mode<4){TProfit=Entry+(Mode-2)*Profit;}else{TProfit=Entry+(6-Mode)*Profit;}
for(i=0;i<4;i++){
d=OrderSelect(i,SELECT_BY_POS);
d=OrderModify(OrderTicket(),OrderOpenPrice(),StopLoss,TProfit,0,Green);
}}}
//---Del Routine---
void Del(){
if (OrdersTotal()!=4){
for (i=OrdersTotal()-1; i>=0; i--){
d=OrderSelect(i,SELECT_BY_POS);
d=OrderDelete(OrderTicket(),clrNONE);
}}}

2016年3月24日木曜日

EA BDeh1/2

古い記憶だがスイス インタラーケンからマッターホルンへ向かう登山列車はラックアンドピニオン式で線路の真ん中にギアの引っかかる刻みがあった。
車両はたしかBDeh 1/2 小さくてキュートな形であるが坂をぐんぐん登る。
グラフがぐんぐん登るようにとその名前をEAに付けました。
(※EXCELのB列とD列とE列とH列からつけた名前ではありません!!)
バラバラのeaを一つにまとめるのは苦労しました。


レンジ相場にはポジションをため込む傾向があります。
本来の作成趣旨とは異なりますがこれはこれでいいですねw




BDEH1/2はこちら

MACD RSI Bands ADXの組み合わせ

シンプルなエントリーをあきらめ複数の組み合わせを検討しましょう
各EAのバックテスト結果をEXCELに張り付けピポットテーブルで月別に加工
6年すなわち72か月は多すぎるので年ごとに抜粋しました。
ひと月マイナスを我慢するのは精神的に悪いので一番下のプラス月も検討材料に追加
BDEHはBとDとEとHの合算です。



まず驚いたのがADXです。マイナス年がなくプラス月が一番多い、すばらしい安定感
ADXは苦手だったのですが、見直しました。
ではADXにVシステムを搭載すると


月別にみると損失マイナス100万以上の月が8か月 
結果だけを見ると10万円が66万円になっていますが、これはいただけないですね

そしてMACD,RSI,Bands,ADXからプラス月の多いBDEHが
プラス月58か月 分母は72カ月ですので80.5%です。
これをうまく活用したいところですね。
4つをばらばらのMT4で動かすか、一つにまとめるか。
OANDAは両建てができません。
買い建てを持っている時に売りシグナルが出た時の処理が難しいところです。
単純に買いクローズ、売りエントリーでは指標の能力差が反映されません。
指標ごとに優先順位を付ける手がベターな気がします。
Vシステムも単純に4分割ではなく比率を変えた方がよさそうです。
なかなか大変な作業が待っていそうです(@@;)

MACD一分足にVシステムを搭載すると

ベルギーの首都ブリュッセルで大きな爆発があったニュースが飛び込んできました。
この場をお借りしてお悔み申し上げます。
ちょうど先月あの空港までフライトし、ブリュッセルを楽しんだのですが、
まさかこんなことになるとは...