Diablo

 

Je propose un système universel de passation de commandes utilisant les niveaux de Lapin. Script pour le placement automatique des commandes selon ce schéma :

// Diablo v16.09.10
#property copyright "Jon Katana"
#property show_inputs
extern double Up=0;
extern double Down=0;
extern int Levels=0;
extern int Step=0;
extern double Vol=0;
extern int Spread=0;
int start()
{for(int i=0;i<Levels;i++)
{OrderSend(Symbol(),OP_BUYSTOP,Vol,Up+(2*i*Step+Spread)*Point,0,0,0,0,0);
OrderSend(Symbol(),OP_SELLSTOP,Vol,Down-2*i*Step*Point,0,0,0,0,0);
OrderSend(Symbol(),OP_SELLLIMIT,Vol,Up+(2*i+1)*Step*Point,0,0,0,0,0);
OrderSend(Symbol(),OP_BUYLIMIT,Vol,Down-((2*i+1)*Step-Spread)*Point,0,0,0,0,0);
OrderSend(Symbol(),OP_BUYSTOP,Vol,Up+(2*i*Step+Spread)*Point,0,Up+(2*i-1)*Step*Point,Up+(2*i+2)*Step*Point,0,0);
OrderSend(Symbol(),OP_SELLLIMIT,Vol,Up+(2*i+2)*Step*Point,0,Up+((2*i+3)*Step+Spread)*Point,Up+((2*i+1)*Step+Spread)*Point,0,0);
OrderSend(Symbol(),OP_SELLSTOP,Vol,Down-2*i*Step*Point,0,Down-((2*i-1)*Step-Spread)*Point,Down-((2*i+2)*Step+Spread)*Point,0,0);
OrderSend(Symbol(),OP_BUYLIMIT,Vol,Down-((2*i+2)*Step-Spread)*Point,0,Down-(2*i+3)*Step*Point,Down-(2*i+1)*Step*Point,0,0);}
OrderSend(Symbol(),OP_SELLLIMIT,Vol,Up,0,Up+(Step+Spread)*Point,Down-(Step-Spread)*Point,0,0);
OrderSend(Symbol(),OP_BUYLIMIT,Vol,Down+Spread*Point,0,Down-Step*Point,Up+Step*Point,0,0);
return(0);}
Variables :

Up - valeur du niveau Rabbit le plus proche du prix (par exemple, 1.3040) ;

Down - valeur du niveau Rabbit le plus proche du prix (par exemple, 1.3000) ;

Niveaux - nombre de niveaux de Rabbit, sur lesquels les ordres d'un type seront exposés (par exemple 5 - 10 niveaux vers le haut et vers le bas du prix seront impliqués) ;

Step - pas entre les niveaux du Lapin en points (par exemple 40) ;

Vol - volume d'un ordre (par exemple 0,01) ;

Écart - écart (par exemple 2).

Diablo à n'importe quelle trajectoire du mouvement des prix pour une journée clôture soit en profit (de un à plusieurs couloirs entre les niveaux Rabbit), soit en zéro (moins les spreads). La fermeture négative ne se produit qu'en cas de fort retour en arrière (plus d'un couloir) à partir des niveaux d'ordres libres directs (Stop d'achat ou Stop de vente), à partir du cinquième niveau de Rabbit, en comptant à partir du prix. Un fort repli à partir du cinquième niveau entraîne des pertes dans un couloir, à partir du septième niveau - deux, et ainsi de suite. D'autres trajectoires apportent un bénéfice (un à plusieurs dizaines de couloirs) ou zéro. Dans Diablo, une partie des ordres est fermée par un Take Profit ou un Stop Loss, tandis qu'une autre partie n'a pas de stops, formant des locks mutuels, qui doivent être fermés manuellement à la fin de la journée ou le lendemain matin. Le prix ne doit pas dépasser la grille d'ordres, le nombre de niveaux doit donc être pris avec une réserve.

Le régime se compose de quatre parties :

1) En partant du plus proche du niveau de prix du Lapin, les ordres libres directs sur les niveaux de l'indicateur sont placés dans cet ordre : Buy Stop - Sell Limit - Buy Stop - Sell Limit... Et ainsi de suite. De même dans l'autre sens : Sell Stop - Buy Limit - Sell Stop - Buy Limit... Ces ordres n'ont ni Stop Loss, ni Take Profit, ils doivent être fermés manuellement en fin de journée.

2) Sur les mêmes positions des ordres libres directs (Stop d'achat et Stop de vente), les ordres du même type sont placés, mais avec un Take Profit égal à 2xStep et un Stop Loss = Step. C'est-à-dire qu'au même endroit où se trouve un Buy Stop libre, le second Buy Stop est placé, mais avec des stops.

3) Sur toutes les mêmes positions d'ordres directs, des ordres inversés (Limite de vente et Limite d'achat) avec Take Profit et Stop Loss égaux au Step sont placés.

4) Seulement sur les premiers niveaux les plus proches du prix Rabbit sont placés des ordres inversés Sell Limit et Buy Limit avec Take Profit = 2xStep et Stop Loss = Step.

 
 
Bonjour
 

Est-ce que c'est... vous devez faire des niveaux virtuels et écrire une simulation avec toutes les transitions possibles ? Je veux dire, cela pourrait être quelque peu fascinant - mais seulement parce que vous ne pouvez pas calculer le comportement d'un tel système.

JohKatana:
Bonjour
Bonjour
 

Bravo !

C'est bon de voir et de lire un nouveau sujet "chargé" !

 
JohKatana:
Bonjour
Et au revoir.
 
KU ! !! :)
 
granit77:
Et au revoir.

Pourquoi ça ?
 
sever30:
Pourquoi ça ?
 
Celui de droite est plus attrayant. :)
 
Swetten:
Celui de droite est plus attrayant. :)
Il est plus jeune, aussi. Je veux dire, il était...
Raison: