ProRealTime: GNT@SYS

Voici le code de l’indicateur ProRealTime GNT@SYS

Des questions? Des idées? Des astuces? Venez échanger et discuter sur le forum !

Bons trades.

Grégoire Tardy

// Grégoire Tardy 01.01.2010
// Update : 01.01.2011

///////   A LIRE ATTENTIVEMENT AVANT L’UTILISATION DU TRADING SEMI AUTOMATIQUE ////////

/// LE PROGRAMME CI DESSOUS EST LIBRE DE TOUTE MODIFICATION. EN EFFET, IL VOUS PERMET
/// DE CONSTRUIRE VOTRE STRATEGIE DE TRADING ET DE LA COMMUNIQUER AU TRADING SEMI
/// AUTOMATIQUE. AVANT TOUTE MODIFICATION, PRENEZ SOINS DE COPIER TOUT SON CONTENU
/// DANS UN FICHIER TEXTE QUE VOUS CONSERVEREZ PRECIEUSEMENT.

/// LE TRADING SEMI AUTOMATIQUE N’EST PAS UN SYSTEME DE TRADING. AINSI, POUR L’UTILISER
/// VOUS DEVEZ LUI ADJOINDRE VOTRE SYSTEME DE TRADING PERSONNEL. POUR CE FAIRE, VOUS
/// DEVEZ COPIER ET COLLER VOTRE SYSTEME DE TRADING DANS L’INDICATEUR PROREALTIME
/// ‘GNT@SYS’ QUE VOUS TROUVEREZ DANS LA LISTE DES INDICATEURS UNE FOIS LE MODULE
/// ‘GNT@TSA’ INSTALLE SUR VOTRE PLATEFORME. L’INDICATEUR ‘GNT@SYS’ EST LE SEUL INDICATEUR
/// QUI EST UTILISE PAR LE PROGRAMME ‘GNT@TSA’.

/// L’INDICATEUR ‘GNT@SYS’ EST UNE STRUCTURE PROFORMAT POUR VOUS GUIDER DANS LA
/// COMMUNICATION DES DONNEES NECCESSAIRES AU FONCTIONNEMENT DU ‘GNT@TSA’

/// A TITRE D’EXEMPLE, UN SYSTEME DE TRADING FICTIF EST FOURNI PAR DEFAUT DANS L’INDICATEUR
/// ‘GNT@SYS’. IL PERMET D’ILLUSTRER L’UTILISATION DU ‘GNT@TSA’ SUR LE MARCHE DES DEVISES
/// DIT ‘FOREX’. ATTENTION, NE PAS UTILISER CE SYSTEME FICTIF !

/// EN VOICI CI DESSOUS UN DESCRIPTIF.

// Signal Alerte : Croissement d’une moyenne mobile exponentielle de 8 périodes avec une
// moyenne mobile exponentielle de 21 périodes

// Signal Entrée en position : Rebond du cours (prix) sur la moyenne mobile
// exponentielle de 21 périodes

// Signal d’invalidation : Croissement, dans le sens inverse au signal d’alerte, des deux
// moyennes mobiles, rapidement après la prise de position sur le marché.

// Signal de prise de bénéfice : Croissement de la moyenne mobile exponentielle de 21
// périodes par le cours de clôture.

// Signal de clôture de position : Croissement, dans le sens inverse au signal d’alerte,
// des deux moyennes mobiles.

// STOP DE PROTECTION A 10 PIPS AU DELA DU PUS HAUT/BAS A L’INSTANT DU SIGNAL
// OBJECTIF DE SORTIE A 40 PIPS AU DELA DU PUS HAUT/BAS A L’INSTANT DU SIGNAL

/////////////////////////////////////////////////////////////////////////////////////////
// Initialisation des variables
/////////////////////////////////////////////////////////////////////////////////////////

/// CI APRES DEUX VARIABLES POUR LA GESTION DE LA TENDANCE DANS LE SYSTEME DE TRADING
/// FICTIF

Trda = 0
Trdv = 0

/// CI APRES, TOUTES LES VARIABLES NECESSAIRES AU TRADING SEMI AUTOMTIQUE POUR VOUS
/// GUIDER DANS LA GESTION DE VOS POSITIONS

LgAle = 0
ShAle = 0

LgSig = 0
ShSig = 0

StopPrice = 0
ObjPrice = 0

LgBenSig = 0
ShBenSig = 0

LgOutSig = 0
ShOutSig = 0

LgInvSig = 0
ShInvSig = 0

/////////////////////////////////////////////////////////////////////////////////////////
// Appel des fonctions externes ou calcul d’indicateurs sous jacents à la stratégie
/////////////////////////////////////////////////////////////////////////////////////////

EMASh = ExponentialAverage[8](close)
EMALg = ExponentialAverage[21](close)

/////////////////////////////////////////////////////////////////////////////////////////
// Gestion des filtres
/////////////////////////////////////////////////////////////////////////////////////////

/// LA TENDANCE EST DEFINIE PAR LA POSITION DE LA MOYENNE MOBILE COURTE, PAR RAPPORT A LA
/// MOYENNE MOBILE LONGUE

If EMASh => EMALg Then
 
 TRDA = 1
 TRDV = 0
Else
 TRDA = 0
Endif

If EMASh < EMALg  Then
 
 TRDV = 1
 TRDA = 0
Else
 TRDV = 0
Endif

/////////////////////////////////////////////////////////////////////////////////////////
// Gestion des signaux
/////////////////////////////////////////////////////////////////////////////////////////

// Signal d’alerte //
//——————//

// LE SIGNAL D’ALERTE ET ISSUE DU CROISSEMENT DES DEUX MOYENNES MOBILES EXPONENTIELLES

LgAle = EMASh crosses over  EMALg  /// Signal d’alerte à la hausse
ShAle = EMASh crosses under EMALg  /// Signal d’alerte à la baisse

// Signal d’entrée en position //
//—————————–//

// LE SIGNAL D’ENTREE EN POSITION EST ISSU DU REBOND DES PRIX SUR LA MOYENNE MOBILE EXPONENTIELLE DE 21 PERIODES

LgSig = TRDA AND ((Close crosses over EMALg) OR (Close > EMALg AND OPEN > CLOSE))
ShSig = TRDV AND ((Close crosses under EMALg) OR (Close EMALg AND CLOSE < EMALg)) AND (OPEN < CLOSE)

 

// Signal d’invalidation de la position //

//————————————-//

// IL Y A INVALIDATION DU SIGNAL SI NOUVEAU CROISSEMENT, DANS LE SENS INVERSE DES DEUX MOYENNES MOBILES.

LgInvSig = EMASh crosses under EMALg
ShInvSig = EMASh crosses over EMALg

// Si vous ne souhaitez pas utiliser un signal d’invalidation, alors il suffit
// d’attribuer la valeur 0 à la variable. Comme ci dessous !
// LgInvSig = 0
// ShInvSig = 0

// Signal de prise de bénéfice //
//—————————-//

// IL Y A UN SIGNAL DE PRISE DE BENENFICES SI LE COURS EN CLOTURE CROISE LA MOYENNE MOBILE EXPONENTIELLE DE 21 PERIODES

LgBenSig = CLOSE crosses under EMALg
ShBenSig = CLOSE crosses over EMALg

// Si vous ne souhaitez pas utiliser un signal de prise de bénéfice, alors il suffit
// d’attribuer la valeur 0 à la variable. Comme ci dessous !
// LgBenSig = 0
// ShBenSig = 0

// Signal de sortie de position //
//——————————//

// IL Y A SIGNAL DE SORTIE SI NOUVEAU CROISSEMENT, DANS LE SENS INVERSE DES DEUX MOYENNES MOBILES.

LgOutSig = EMASh crosses under EMALg
ShOutSig = EMASh crosses over EMALg

/////////////////////////////////////////////////////////////////////////////////////////////
// Stop & Objectif
/////////////////////////////////////////////////////////////////////////////////////////

/// IL EST IMPORTANT DE COMMUNIQUER AU TRADING SEMI AUTOMATIQUE VOTRE NIVEAU DE SORTIE ET
/// VOTRE OBJECTIF AU MOMENT OU VOUS AVEC VOTRE SIGNAL D’ENTREE EN POSITION.

/// ATTENTION, VOUS AVEZ LA POSSIBILITE DE TRANSMETTRE UNE VALEUR ISSUE D’UN CALCUL FIXE,
/// SOIT PRIX/COURS PLUS OU MOINS X% OU X POINTS OU PIPS. MAIS EGALEMENT D’UN INDICATEUR, /// SOIT LA VALEUR D’UNE MOYENNE MOBILE PLUS OU MOINS X% OU X POINTS OU PIPS.
/// TOUTEFOIS, CES DONNES NE SONT TRANSMISES QU’A L’INSTANT DU SIGNAL D’ENTREE EN
/// POSITION

/// SI ENTREE EN POSITION LONGUE ////

If LgSig = 1 Then
 StopPrice = LOW – 0.001
 ObjPrice = HIGH + 15
Endif

/// SI ENTREE EN POSITION COURTE ////

If ShSig = 1 Then
 StopPrice = HIGH + 0.001
 ObjPrice =  Low – 15
Endif

/////////////////////////////////////////////////////////////////////////////////////////
// Gestion des retours
/////////////////////////////////////////////////////////////////////////////////////////

// CI APRES LA LIGNE LA PLUS IMPORTANTE DU PROGRAMME GNT@SYS, CELLE QUI VA PERMETTRE
// LA TRANSMISSION DES VALEURS DE VOTRE SYSTEME DE TRADING AU TRADING SEMI AUTOMATIQUE
// GNT@TSA

// VOUS TROUVEREZ CI APRES 12 VALEURS A RETOURNER. NE PAS MODIFIER CETTE LIGNE AU RISQUE // DE CREER UN DYSFONCTIONNEMENT DU TRADING SEMI AUTOMATIQUE. SI VOUS N’UTILISEZ PAS CERTAINS SIGNAUX, ALORS AFFECTEZ LEUR UNE VALEUR DE 0 DANS LE PROGRAMME CI DESSUS.

Return LgAle as “LgAle”, ShAle as “ShAle”, LgSig as “LgSig” , ShSig as “ShSig” , StopPrice as “StopPrice” , ObjPrice as “ObjectifPrice”,  LgInvSig as  “LgInvSig”,  ShInvSig as “ShInvSig”, LgBenSig as “LgBenSig” , ShBenSig as “ShBenSig”, LgOutSig as  “LgOutSig”,   ShOutSig as “ShOutSig”

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>