数学が得意な方に質問です - ページ 4

 
最適化は一切しない。ただの演繹的推論。
 
rbhauer:
最適化は一切しない。ただの演繹的推論。

すごい...
 

UbzenのものとVininのストラテジーゲームを組み合わせました。

extern bool MMM_lots=1;
int      Dir;
double   Min,Price,lotc,profit,loss,spr;
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int init(){
    Min=MarketInfo(Symbol(),MODE_LOTSTEP);lotc=Min;profit=AccountBalance();loss=profit;
    return(0);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int start(){
    Dir=-1;
    if(Close[1]<Open[1] && Bid<Open[0])Dir=OP_BUY;
    if(Close[1]>Open[1] && Bid>Open[0])Dir=OP_SELL;
    if(Dir>-1){spr=Ask-Bid;if(OrdersTotal()>0)Stop();if(OrdersTotal()<1)Send();}
    return(0);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
int Send(){
    if(Dir==0)Price=Ask;if(Dir==1)Price=Bid;
    int Ticket=OrderSend(Symbol(),Dir,LotsCalc(),Price,999,0.0,0.0,"",0,0);return(Ticket);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
bool Stop(){
    OrderSelect(OrdersTotal()-1,SELECT_BY_POS);
    Price=MathAbs(OrderOpenPrice()-OrderClosePrice());
    if(OrderType()!=Dir&&Price>spr)
    OrderClose(OrderTicket(),OrderLots(),OrderClosePrice(),999);return(0);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
double LotsCalc(){
   if(!MMM_lots)return(lotc);
   if(profit>AccountBalance()||loss>profit)lotc+=Min;  else {lotc=Min;loss=profit;}
   profit=AccountBalance();return(lotc);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
ファイル:
 
rfb:

UbzenのものとVininのストラテジーゲームを組み合わせました。

素敵なコードとクールなもの :-)
 

FWIW、サンプル量の低下はあまり自慢にならない。しかし、これは基本的に前のスクリーンショットのエントリーからロバストな決定木フィルタリングを行うものです。4つのフェーズがあります。A,B,Cで入力条件を決定します。Aが一番上で、BはAに戻るかCに進むか、ABCはAの大きさを基準にした対向ベクトル列です。A,B,Cが成立したら、トレードを行う。Dはトレーリングフェーズ(トレードが軌道の方向を維持することを確認する)。予測は一切せず、分類するだけ。トレード量を増やすには、ツリーの枝を無視して、それぞれのセットアップやシグナルに、プロフィットファクター(ケリー単位)で規定されるリスク分を割り当てればいいと思う。必要に応じて、さらに最適化するためにM1オープンプライスを使用して同様にバックテストします(正確ではありませんが、十分に一貫しています)。

驚くべき事実:同じアルゴはAUDUSDとUSDJPYではうまくいかなかったが、良いニュースは負けパターンが一貫していることだ。私の最初の直感は、ジグザグ配列の動作の違いによるものです(それゆえ、ABCD決定木をさらに調査したのです)。今のところ124行のコードで、特に派手なことはしていない。


 
rbhauer: 私は、取引量を増やすために、ツリーの無視された枝で作業し、利益率(ケリー単位)で指示されたように、そのリスク部分と各セットアップ/シグナルを割り当てるべきだと思います。
Rbhauerさんの投稿は素晴らしいです。どのように上記を達成するつもりですか?
 

GBPはちょっとくすぐられるのが好きなんです。ここでは、おかしな調整はしていません。PFが1.38から1.77にアップしていることに注目してください。より高い信号品質、より少ない周波数。これまでのところ、すべて一貫しています。これらはすべてノン・コンパウンド(静的なバンクロールに対する一定のリスク値)です。

コンペンデッド @ 38% maxDD, 50K start


 
rbhauer:

GBPは少しくすぐられるのが好きなんです。ここでは、クレイジーな調整はしていません。PFが1.38から1.77にブーストしていることに注目してください。より高い信号品質、より少ない周波数。これまでのところ、すべて安定しています。これらはすべてノン・コンパウンド(静的なバンクロールに対する一定のリスク値)です。

コンペンデッド @ 38% maxDD, 50K start


これは印象的です。共有できますか?GBDUSDで私のストラテジーをテストしましたが、あまり印象的な結果ではなく、だいたい収支が合いました。他の通貨ペアはもっとうまくいきます。

私は、ATRをSLとBEの測定値として使用して、ビル-ウィリアムズの取引システムを30M-1Hスキャルパーに追加しようとしています。また、お知らせします。

 
rbhauer:

GBPは少しくすぐられるのが好きなんです。ここでは、クレイジーな微調整はしていません。PFが1.38から1.77にブーストしていることに注目してください。より高い信号品質、より少ない周波数。これまでのところ、すべて安定しています。これらはすべてノン・コンパウンド(静的なバンクロールに対する一定のリスク値)です。

コンペンデッド @ 38% maxDD, 50K start


これは期待できそうです。 あなたが書いたものを教えていただけませんか?

私は、手動モードで成功した修正マーチンゲール戦略で作業しており、そのEAを書き始めているところです。 あなたのものと比較できたら最高です。

 

同じ現象が利用できるかどうか、低めのTFに入りました。今のところ、その可能性は高いと思われる。シグナル頻度が過去8年間で1137回と大幅に増加(年間平均150回)しており、統計的な保証を得るには良い。株価のDDは、それほど跳ね上がることはないようです。今、真ん中の長い横ばい期間を調査し、全体的な市場テーマが袋詰めされ、少し異なるセットアップの微調整のために識別されるかどうかを確認します。