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

Re: PureDeal > Comment forcer une position en permanence

par falex » 26 nov. 2013 10:12

frigolite a écrit :Dernière précision, en fait ça fonctionne aussi pour les tickets internes à la fenetre à la condition d'activer les tickets multiples dans les préférences. :top:
C'est quoi un ticket interne ?
tu peux me faire une copie d'écran s'il te plait.

Re: PureDeal > Comment forcer une position en permanence

par frigolite » 26 nov. 2013 10:37

A gauche un ticket interne, à droite un ticket dans une fenêtre externe.

Re: PureDeal > Comment forcer une position en permanence

par falex » 26 nov. 2013 10:52

Ah oui ok.

Je n'avais testé que pour les ticket interne.
Cool ça marche dans les deux cas :-)
Par contre si vous entrez un ordre sur graphique : ça ne marche pas (j'espère que ce n'est pas le code Flash qui gère ce truc là sinon ça va être chaud.

Je retourne creuser entre deux réunions.

---
Je vais creuser longtemps : c'est du flash. Là je déclare forfait (et je vais la jouer perso : comme je ne passe jamais d'ordre sur graphique ...). Si quelqu'un se sent de faire quelque chose ?

Une idée pourrait être de rajouter un proxy dans firefox, d'intercepter la requête POST et de rajouter le champ "forceOpen" dans la requête, ce qui évite de toucher le code flash et permettrais d'avoir en permanence une position forcée (mais sans contrôle visuel).

Qui s'y colle ?

Re: PureDeal > Comment forcer une position en permanence

par falex » 26 nov. 2013 11:01

Frigolite : La fonction "Ticket d'ordre multiple" n'a pas d'incidence sur le fonctionnement du code.
Si tu actives cette fonction ça te permet d'ouvrir 3 tickets en // au lieu d'un seul par défaut.

Je trouve cela très utile dans certains cas , par exemple quand je surveille deux sous-jacents et que je veux "tirer" sur le bon en premier. Les tickets sont près, y'a plus qu'à cliquer au bon moment.

Re: PureDeal > Comment forcer une position en permanence

par frigolite » 26 nov. 2013 11:13

falex a écrit :Frigolite : La fonction "Ticket d'ordre multiple" n'a pas d'incidence sur le fonctionnement du code.
Si tu actives cette fonction ça te permet d'ouvrir 3 tickets en // au lieu d'un seul par défaut.
Effectivement, le code n'avait fonctionné qu'après que j'aie activé cette fonction. Mais je suis revenu en ticket unique et il fonctionne toujours. J'avais du oublié de rafraîchir la page. Normal avec les températures actuelles.

Reste un défaut avec ton code. Pour les trades effectués avec la tablette ou le smartphone, il faut éviter d'oublier les vieilles habitudes!

Re: PureDeal > Comment forcer une position en permanence

par falex » 26 nov. 2013 11:16

Effectivement ça ne concerne que l'interface web et pas l'appli pour mobile/tablette.

Re: PureDeal > Comment forcer une position en permanence

par falex » 28 nov. 2013 15:12

ET mince je n'avais pas testé comme il se doit et finalement mon bout de code coche bien la case mais la valeur "position forcée" n'est pas envoyé au serveur ...

Donc en résumé : mon code est purement cosmétique pour l'intant.
Je vais l'effacer pour éviter que certain se fasse avoir.

Re: PureDeal > Comment forcer une position en permanence

par falex » 09 oct. 2014 14:42

bon bon j'ai replongé dans cette histoire de case à coché.

Quand l'iunterface web envoi la requête pour ouvrir un ticket elle le fait via un formulaire de type "POST".

Dans les variables transmises au serveurs web d'ig il y une var
forceOpen = Y ou forceOpen=N selon que l'on force ou non la position.

Bon bon mais là ça ne m'aide pas car ce n'est que la partie "réseau" de la demande.

Donc partant de là je me suis dit : dans le DOM de la page web il doit y avoir une variable forceOpen.

Alors je regarde avec la console mais rien ...

Je tente plusieurs truc du genre $("#forceOpenCheckbox_1") ... mais à part afficher les attributs de la checkbox ...

Donc c'est là que je coince, comment fait-on pour voir quel variable sont affecte par la fonction click()de la checkbox ????

Help

Re: PureDeal > Comment forcer une position en permanence

par Gret12 » 09 oct. 2014 17:11

il suffit d'insérer dan ton formulaire un champs caché avec comme nom forceOpen

"<input type="hidden" name="forceOpen" value="Y">"

Re: PureDeal > Comment forcer une position en permanence

par falex » 09 oct. 2014 17:20

ARf oui ça pourrait marcher si on étatit sur des pages web "classique" mais là on est sur une truc hyper chiadé avec du jqyery ou le <Form>, n'est même pas écris dans le code HTML... il est géré en dynamique pas le JS ... d'où ma difficulté de debug du "machin".

Finalement ma question pour les spécialiste du jquery serait : Comment est-ce que l'on remonte à la fonction associé à un selector ?

Re: PureDeal > Comment forcer une position en permanence

par ladefense92800 » 10 oct. 2014 14:49

falex a écrit :ARf oui ça pourrait marcher si on étatit sur des pages web "classique" mais là on est sur une truc hyper chiadé avec du jqyery ou le <Form>, n'est même pas écris dans le code HTML... il est géré en dynamique pas le JS ... d'où ma difficulté de debug du "machin".

Finalement ma question pour les spécialiste du jquery serait : Comment est-ce que l'on remonte à la fonction associé à un selector ?

je dirais ..... va voir la doc ...

sinon ....te prend pas la tete avec ça .

Re: PureDeal > Comment forcer une position en permanence

par falex » 12 oct. 2014 15:01

bon bon j'ai pris mon courage à deux mains et j'ai bien avancé sur la compréhension du fonctionnement de PureDeal.

1) tout est bien écris avec du jQuery
2) il ont fait de la programmation en OO (moi qui déteste ça je suis servi)
3) J'ai remis des retour chariot dans le fichier de scripting (300000 caractères sur la même ligne, hummm que c'est illisible)
4) A y est j'ai trouvé le module qui gère le "forceOpen".

Bon maintenant faut que je vois comment ré-écrire on bout de code pour avoir un ticket forçée permanent.

---

en tout cas je trouve leur code et l'architecture du code relativement bien faite.

Re: PureDeal > Comment forcer une position en permanence

par takapoto » 12 oct. 2014 15:29

Passionnante ton enquête !

Re: PureDeal > Comment forcer une position en permanence

par falex » 13 oct. 2014 17:14

bon bon j'avance par àacoup car faut que je comprenne ce que je cherche, le fonctionnement des bnavigateur web le DOm, le JS et la façon dont les dev ont "monté la machine".

ALors j'en suis là :

Dans la console je vois bien les fonctions de type ig.ticket.ModuleForceOpen ... mais je ne sais pas trop quoi en faire ...
Je pense que c'est le "parent" qui doit être utilisé lorsque l'in instancie un nouveau ticket.

J'ai refait une trace d'ouverture d'un ticket après avoir modifier via la console la case à cocher "force open". Evidement ce n'est que cosmetique.

Dans le code il y a une référence à un object (je suppose qu'il s'agit d'un objet) isForceOpen ... mais je n'arrive pas à mettre la main dessus.

En aprtant des objet HTML je n'y arrive pas.
En essayant de chercher dans la base d'objet du JS je ne trouve rien (et je ne suis pas sûr de chercher au bon endroit).
En decriptant le JS l'action est simple quand on clique sur la case :
1) votre navigateur coche la case tout seul comme un grand
2) le script intercepte le click et met la variable "soredForceOpenValue à TRue ou false, idem pour "isForceOpen"

Mais dans le script l'objet parent est référencé par "this".

C'est là que je but, je ne sais pas quel est le parent ...

Je laisse reposer car le cours de jquery et de javascript en accéléré ... faut que je digère un peu (surtout que le code d'ig c'est du haut de gamme ...)

Re: PureDeal > Comment forcer une position en permanence

par falex » 15 oct. 2014 07:19

C'est un "vieux" projet.
Effectivement le but est d'interagir directement sur la page web.

Tu as raison depuis que les API publiques ont été publié il y a moins d'utilité mais ... Nous sommes encore tres tres nombreux à utiliser l'interface web et à se faire avoir avec la case "position forcée" non coché.

---

J'ai continué à explorer les fonctions dispo en fait j'hésite entre chercher du côté des "panel" soit des directives ticketcollection ou ticketmanager...

Sujets similaires
Code pour forcer la cloture d'une position
par dd75000 » 01 juil. 2015 23:39 (2 Réponses)
PureDeal > Comment mettre le bouton "Compte" à gauche
par Amarantine » 27 nov. 2013 10:59 (4 Réponses)
Direct Market Live depuis PureDeal
Fichier(s) joint(s) par swapping » 29 mars 2015 11:06 (0 Réponses)
IG PureDeal > Fin le 31 mars 2024
Fichier(s) joint(s) par ChristelleP » 13 mars 2024 14:17 (7 Réponses)
Forcer l'horizontalité sur les tracés de segments
par Clive » 18 déc. 2016 19:32 (2 Réponses)
Faut-il se forcer à investir dans l’immobilier ?
par fabrelaurent » 26 déc. 2018 16:17 (80 Réponses)
PRT 11 / Forcer l'affichage pour inclure les indicateurs
Fichier(s) joint(s) par OpenBar » 13 août 2021 12:58 (1 Réponses)
Fermer une position en ouvrant une position inverse.
Fichier(s) joint(s) par Ariath » 20 sept. 2017 16:42 (24 Réponses)
comment vendre 3 lots sur 4 d une position ?
par falex » 06 avr. 2013 15:34 (16 Réponses)
comment calculer la taille de position sur action ?
par stive » 15 juil. 2014 14:47 (5 Réponses)