ProRealTime
Forum dédié à ProRealTime cfds à risque limité : les questions sur les cfds à risque limité à risque limité, les trucs et astuces sur l'interface de trading...

PureDeal > Comment forcer une position en permanence

par falex » 21 Nov 2013 15:35

Sur l'interface Web (PureDeal), nous nous sommes tous fait avoir avec la case "Position Forcé" qui est décoché par défaut.
L'interface d'IG étant du Web+Javascript j'ai commencé à regarder s'il était possible de faire un script de type GreaseMonkey pour forcer la case à chaque ouverture de ticket.

La case n'est "qu'une simple" checkbock d'un formulaire Web "<input type=checkbox">".
En utilisant l'outils "Examiner (dans Dev Web)" et en pointant la checkbox je trouve l'Id forceOpenCheckbox_1 de cet élement.

Avec l'ardoise Javascript de Firefox si je rentre un code du style
Code: Tout sélectionner
    var x=document.getElementById("forceOpenCheckbox_1");
    if (x !== null) { x.checked = true; }

ça me check la case, mais j'ai un souci :

Le Panel d'ouverture de ticket est un objet dynamique instancié au moment où on clique sur le sous-jacent. Le "Input" peut avoir un id forceOpenCheckbox_1 ou forceOpenCheckbox_9 ...

De plus si j'ai bien compris le fonctionnement de greasemonkey, celui-ci exécute le code Javascript au moment du chargement de la page, pas après.

Donc est-ce que quelqu'un pourrait m'aider à trouver une solution pour récuperer l'ID au moment du clique (il n'y a pas de load/reload de la page) et executer les deux lignes ci-dessus à ce moment là ?

J'ai pensé à rajouter un EventListener mais je ne sais pas que quel Event écouter ...
Et firebug ne m'aide pas à trouver quel Event est associé à cette satané case.

Est-ce qu'il y a un pro de la programmation Javascript sur ce forum ?

Re: PureDeal > Comment forcer une position en permanence

par Benoist Rousseau » 21 Nov 2013 15:44

Sans moi hélas je ne connais pas du tout JavaScript

Re: PureDeal > Comment forcer une position en permanence

par falex » 22 Nov 2013 09:43

MErci c'est gentil.

Faite la chasse aux développeurs web/JS voilà ce qu'il nous faut (en plus je suis sûr que le "truc" prend 5 minutes à un gars qui fait du dev ou de l'assurance qualité ou du debug de JS à longueur de journée).

En parcourant les forum autour de javascript, je m'aperçois que c'est comme pour le trading : bneaucoup d'ignorant et de "malcromprenant" et très peu d'expert.
Je ne desespère pas ... mais j'ai pas énormément de temps pour creuser plus pour l'instant.

C'est un peu comme une recette de cuisine, je laisse un peu reposé pour ingurgiter la tonne d'info que je me suis prise en lisant/comprenantn le fonctionnement du DOM/JS interne des navigateurs.

Re: PureDeal > Comment forcer une position en permanence

par Rogue » 22 Nov 2013 09:50

Oui, désolé Huggy, mais je n'ai jamais touché à Javascript... :?

Juste une question : le ticket d'opération IG est une nouvelle fenêtre de navigateur ou est-il intégré à la page web ?

Re: PureDeal > Comment forcer une position en permanence

par frigolite » 22 Nov 2013 09:56

Rogue K. a écrit:Oui, désolé Huggy, mais je n'ai jamais touché à Javascript... :?

Juste une question : le ticket d'opération IG est une nouvelle fenêtre de navigateur ou est-il intégré à la page web ?


C'est une fenêtre intégrée à la page web :mrgreen: .
Ce n'est pas une nouvelle fenêtre Firefox par exemple.

Re: PureDeal > Comment forcer une position en permanence

par Rogue » 22 Nov 2013 10:01

Donc si on fait un refresh de la page, cette fenêtre disparaît ?

Re: PureDeal > Comment forcer une position en permanence

par frigolite » 22 Nov 2013 10:17

Rogue K. a écrit:Donc si on fait un refresh de la page, cette fenêtre disparaît ?


:mrgreen:

Spoiler:
la réponse est dans le :mrgreen:

Re: PureDeal > Comment forcer une position en permanence

par Rogue » 22 Nov 2013 10:19

frigolite a écrit:
Rogue K. a écrit:Donc si on fait un refresh de la page, cette fenêtre disparaît ?


:mrgreen:

Spoiler:
la réponse est dans le :mrgreen:

Merci Jean Mimi ! :mrgreen:

Re: PureDeal > Comment forcer une position en permanence

par falex » 22 Nov 2013 10:42

J'ai regardé vite faite avec DOM Inspector (add-on pour FF) mais celui-ci ne pointe pas sur le code JS directement donc c'est un peu hard a décompiler ...

Disons que pour vous faire une image de ce que je cherche :
1) sur le serveur web tu as des fichiers de type .HTML, .JS qui sont le code de base de l'interface.
2) ton navigateur va chercher ces fichiersr et les inspects.
3) Là il va créer en interne un DOM (une sorte d'arbre où l'ensemble des objets sont insérer dans les feuilles de l'arbre).
En plus de ça tu as le code Javascript qui va :
- soit modifier des propriétés des objets à la création du DOM
- soit modifier la feuille dans le DOM sur un évenement (li.e onclick()).

Donc le code d'IG est simple à résumer : Quand je clique sur un sous-jacent (le fameux Event que je n'arrive pas à trouver), je créer un nouveau DIV qui a pour Id divTicket-X.

Une fois le DIV créé il est très simple d'aller faire un bout de script qui va changer l'attribut par défaut du bouton "Position forcée". C'est ce que j'ai posté dans mon premier post.

Mais vous l'aurez compris, il manque le chainon qui est : "J'intercepte la demande d'ouverture du DIV" et je récupère son index (le X dans divTicket-X), car à se moment là tout se passe en interne sur la page.

Re: PureDeal > Comment forcer une position en permanence

par Rogue » 22 Nov 2013 10:49

Et évidemment le divTicket-X a une valeur X variable... :|

Bah, bon courage alors.

Articles en relation
PureDeal > Comment mettre le bouton "Compte" à gauche
par Eversa » 27 Nov 2013 10:59 (4 Réponses)
comment vendre 3 lots sur 4 d une position ?
par falex » 06 Avr 2013 14:34 (16 Réponses)
Comment obtenir une fermeture partiel de sa position sur PRT
par LeLud971 » 27 Aoû 2019 15:45 (2 Réponses)
Direct Market Live depuis PureDeal
Fichier(s) joint(s) par swapping » 29 Mar 2015 10:06 (0 Réponses)
Coupure partielle de position
par frigolite » 19 Juin 2013 18:02 (29 Réponses)
Couverture immobilisée par position
Fichier(s) joint(s) par Djobydjoba » 21 Juil 2018 14:40 (9 Réponses)
Sortie progressive d'une position
par Dernière Chance » 26 Aoû 2015 09:29 (2 Réponses)
Ouverture de position dax mini lot
par plataxis » 05 Nov 2015 16:03 (6 Réponses)
Impossible de sortir de ma position !
par Benoist Rousseau » 03 Oct 2017 10:42 (1 Réponses)
fonction inverser position
par Benoist Rousseau » 14 Juin 2019 07:25 (1 Réponses)

ProRealTime