Question pour une personne douée en mathématiques - page 4

 
Pas d'optimisation du tout. Juste un raisonnement déductif.
 
rbhauer:
Pas d'optimisation du tout. Juste un raisonnement déductif.

impressionnant...
 

J'ai combiné le jeu de stratégie d'Ubzen avec celui de 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);
}
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
Dossiers :
 
rfb:

J'ai combiné le jeu de stratégie d'Ubzen avec celui de Vinin.

De beaux codes et des trucs sympas :-)
 

Pour info, je ne suis pas très fier de la baisse de la quantité d'échantillons. Mais il s'agit essentiellement d'un filtrage robuste par arbre de décision à partir des entrées de la capture d'écran précédente. Il y a 4 phases : A,B,C détermine les conditions d'entrée. A est au sommet, B peut revenir à A ou passer à C. ABC sont des séquences de vecteurs opposés basés sur l'amplitude de A. Lorsque A, B, et C sont vrais, alors le trade est effectué. D est la phase de suivi (s'assurer que la transaction maintient la direction de la trajectoire). Pas de prédiction du tout, juste une classification. Je pense que pour augmenter la quantité de transactions, je devrais travailler avec les branches ignorées de l'arbre et assigner à chaque configuration/signal sa part de risque dictée par le facteur de profit (en unité Kelly). Le backtest sera similaire (pas exactement mais suffisamment cohérent) en utilisant le prix ouvert M1 pour une étude d'optimisation supplémentaire si nécessaire.

Fait surprenant : le même algo n'a pas fonctionné sur l'AUDUSD et l'USDJPY, mais la bonne nouvelle est que le modèle de perte est cohérent. Mon intuition initiale est due à un comportement différent de la séquence en zigzag (d'où la raison pour laquelle j'ai étudié plus avant l'arbre de décision ABCD). Jusqu'à présent, 124 lignes de code, donc rien de vraiment fantaisiste.


 
rbhauer: Je pense que pour augmenter la quantité de transactions, je devrais travailler avec les branches ignorées de l'arbre et assigner à chaque configuration/signal sa part de risque dictée par le facteur de profit (en unité Kelly).
Excellents posts Rbhauer. Comment comptez-vous réaliser ce qui précède ?
 

Le GBP aime être un peu chatouillé. Pas de modifications folles ici. Remarquez l'augmentation du PF de 1,38 à 1,77. Meilleure qualité du signal, moins de fréquence. Tout est cohérent jusqu'à présent. Ces gains sont tous non composés (valeur de risque constante pour une bankroll statique).

Composé @ 38% maxDD, 50K de départ


 
rbhauer:

Le GBP aime être un peu chatouillé. Pas de manipulation folle ici. Remarquez l'augmentation du PF à 1,77 contre 1,38. Meilleure qualité du signal, moins de fréquence. Tout est cohérent jusqu'à présent. Ces gains sont tous non composés (valeur de risque constante pour une bankroll statique).

Composé @ 38% maxDD, 50K de départ


C'est impressionnant. Pourriez-vous partager ? J'ai testé ma stratégie sur la paire GBDUSD et les résultats n'ont pas été très impressionnants, elle est à peu près équilibrée. D'autres paires de devises fonctionnent mieux.

J'essaie d'adapter le système de trading Bill-Wiliams à un scalpeur 30M - 1H en utilisant ATR comme mesure de SL et BE. Je vous tiens au courant.

 
rbhauer:

Le GBP aime être un peu chatouillé. Pas de manipulation folle ici. Remarquez l'augmentation du PF à 1,77 contre 1,38. Qualité du signal plus élevée, moins de fréquence. Tout est cohérent jusqu'à présent. Ce sont tous des gains non composés (valeur de risque constante pour une bankroll statique).

Composé @ 38% maxDD, 50K de départ


Cela semble prometteur. Pourriez-vous partager ce que vous avez écrit ?

J'ai travaillé avec une stratégie martingale modifiée réussie en mode manuel, et je commence à écrire l'EA pour celle-ci. Ce serait formidable de pouvoir comparer avec la vôtre.

 

Je suis allé dans la TF inférieure pour voir si le même phénomène peut être exploité. Jusqu'à présent, cela semble probable. La fréquence des signaux a augmenté de manière significative à 1137 au cours des 8 dernières années (moyenne de 150 signaux par an), ce qui est bon pour l'assurance statistique. L'Equity DD ne semble pas être trop nerveux. Je dois maintenant étudier la période plate prolongée au milieu et voir si le thème général du marché peut être saisi et identifié pour un réglage légèrement différent.