ProRealTime
Zone de développement des applications API, des logiciels et utilitaires développés par les membres du forum

Report Tool - Logiciel de reporting via les API

par beni » 24 Juil 2015 14:45

Bonjour tout le monde,

J'ai developpé une petite appli de reporting avec les API que je vous livre ici parce que:
- vous m'êtes sympathiques,
- pour m'aider dans le debogage et l'amélioration.



Disponible ici pour la version build:
https://drive.google.com/folderview?id=0BweFxnoti206VTNsdXVVSnFVVG8&usp=sharing
et là pour les sources:
https://github.com/beniSo/Report-Tool

Fonctionnalités:
- Listing des trades,
- Résumé des trades,
- Mise à jour "temps réel" ( à la fermeture d'une position),
- Equity curves,
- Commentaires des positions,
- Export des données au format .txt.

Utilisation de la version build:
- Comme la L3, dézipper le dossier et lancer le main.exe,
- Go !

Utilisation depuis les sources:
- voir https://github.com/beniSo/Report-Tool

La connexion aux API se fait via le menu "Connect", le reste est assez simple je vous laisse découvrir.
N'hésitez pas à me faire remonter les bugs/remarques/coquilles

PS: Pour ceux qui s'intéressent au code soyez indulgent, je n'ai pas fait une relecture complète, ce n'est pas pep8 compliant, j'ai pas tout commenté et ma logique est parfois....étrange :musique:

Changelog:
Code: Tout sélectionner
    #########################################
    ##########Report Tool Changelog##########
    #########################################


    ####version 1.0####
    - Initial release.

    ####version 1.1####
    - Add possiblity to take screenshot via the shorcut CTRL+P,
    - Add an options menu in main windows,
    - Add management of UK account,
    - Add some debug features in update_pos and fill_transaction_widget.

    ####version 1.2####
    - Add possibility to show results in points, points/lot, currency, %,
    - Add possibility to switch between client account,
    - Add possibility to include or not fees/interest in calculation,
    - Add possibility to auto calculate initial capital,
    - Add a points/lot column in transactions table,
    - Modification of transaction requests (no more 20 transactions limit)
    - Connection trought proxies,
    - Exclude cash withdrawal, deposit transfer calculation,
    - Merge %trades won/lost/flat labels with nb of trades won/lost/flat,
    - Calculate avg win/loss, avg drawdown,
    - Manage UK account.

    ####version 1.3####
    - Add possibility to customize charts and colors,
    - Add possibility to show or not max dd, depht and hight on chart,
    - Add cash in, cash out, transfer informations,
    - Add button in menu bar to take screenshot,
    - Add status label in status bar,
    - Add a set of icons,
    - Change name of application,
    - Modification of calculation of profit factor and points/lot,
    - Change names of screenshot,
    - Correct connection trhought proxy bug,
    - Improvement of funcMisc.calculate_summary functions.

    ####version 1.3.1####
    - Add possibility to permanently hide infos about capital and account,
    - Correct equity curves,
    - Dock are no longer closable,
    - Change default settings,
    - Change application name.

    ####version 1.4####
    - Add possibility to filter markets,
    - Add possibility to manage multiple accounts,
    - Add possibility to show/hide new hights, drawdowns, max drawdow,
    - Add consecutive losses/wins,
    - Change default settings,
    - Minor bugs fix/changes.

    ####version 1.5####
    - Add possibility to auto-connect on startup,
    - Add possibility to agregate or not positions,
    - Add possibility to comment positions,
    - Add possibility to show dates on x axis,
    - Add an overview plot to select range to observe on main plot,
    - Add a button to refresh transactions,
    - Add a new dock (floating by default) that summarize a particular position,
    - Add options for screenshot,
    - Add possibilty to naviguate through graph using arrows keys,
    - Minor GUI changes,
    - Improve options management (graph are not longer re-plotted if not needed)
    - Some bugs are still not resolved, but can't spend time on them (see comments in main.py)

    ####version 1.5.1####
    - Management of account in $AU, $SG, JPY, CHF, NOK, SEK,
    - Add a Mac OSX archive (merci falex ;-)).

    ####version 1.5.2####
    - Correct bug with CHF account,
    - Correct bug when cashin/out is made.

    ####version 2.0####
    - Possibility to export data to .txt file,
    - Save state of GUI,
    - Encode password and api key,
    - Re-write debug features,
    - Improve keywords management,
    - Pep-8 formatting.

    ####version 2.1####
    - Management of transaction type using config file,
    - Correct bug with proxy connection,
    - Correct bug with log files.

    ####version 2.2####
    - Increase performance (decrease between v1.5 and 2.0 was due to an error in signal management),
    - Add possibilty to take screenshot using a configurable shortcut.


Enjoy !


Re: The Report Tool - Logiciel de reporting via les API

par swingwin » 24 Juil 2015 15:20

Championissimo, Beni :top:
Téléchargé, installé, testé, approuvé et adopté.
Très très beau boulot.
Mille mercis Beni.
Spoiler:
Je n'ai plus qu'à analyser mon equity curve, et là grace à tes courbes, on a tout le matos pour les analyser et tirer les bons enseignements sur son trading.

Re: The Report Tool - Logiciel de reporting via les API

par Benoist » 24 Juil 2015 17:02

Ah j'attendais ça depuis longtemps !!

Je te crée un compte ftp si tu veux comme d'Alex Takapoto. Hâte d'essayer.

Re: The Report Tool - Logiciel de reporting via les API

par beni » 24 Juil 2015 17:43

taka, swing> :mercichinois:
benoist> Sauf changement j'ai déjà les identifiants du ftp mais j'ai changé de FAI (de free à orange) donc d'ip.
Je pense qu'il faut que tu me withelist mais comme ma nouvelle ip est dynamique, il faut que je trouve un moyen de la fixer.

Re: The Report Tool - Logiciel de reporting via les API

par bambi » 24 Juil 2015 17:55

Merci beni, je vais essayer ça tout de suite :mercichinois:

[édit codé] Je n'ai qu'une chose à dire: La Classe Américaine !!! :lol:

Re: The Report Tool - Logiciel de reporting via les API

par Djobydjoba » 24 Juil 2015 18:11

Ça à l'air super !! :top: :top:

Question au passage, les versements et retraits en cours de période sont-ils pris en compte pour établir l'equity curve ? C'est d'ailleurs plus une question par rapport à l'établissement d'un equity curve en général qu'une question sur le logiciel : comment traiter les versements et retraits dans un equity curve ?

Re: The Report Tool - Logiciel de reporting via les API

par beni » 24 Juil 2015 18:40

Ah ah ! on peut rien te cacher bambi :lol:

Bonne question djoby. Perso je pense que non, une equity curve représente les gains/pertes sur une période. Les dividendes/intérêts sont des gains/pertes un retrait/dépôt non.

Pour l'instant je n'ai pas codé la différenciation entre deposit/withdrawal car IG a eu la bonne idée...de ne pas faire de différentiation.

Je m'explique. Le prog distingue les transactions avec le mot clé qu'IG envoi:'ORDRE' pour un ordre, 'DIVIDEND' pour les dividendes, 'WITH' pour les intérêts, 'DEPO' pour un deposit...

J'ai l'impression que si une transaction autre qu'un ordre a lieu, si c'est positif on a le mot clé 'DEPO' et si c'est négatif le mot clé 'WITH' sans distinguo entre une action de l'utlisateur et un frais de financement. Donc en l'état actuel des choses l'equity curve intègre un deposit/withdrawal de l'utilisateur.

D'ailleurs si quelqu'un a fait un retrait ou dépôt récemment je serais pas contre un screenshot du rapport disponible via la PF web (via Mon Compte>Historique>Transactions)

a+

Re: The Report Tool - Logiciel de reporting via les API

par falex » 24 Juil 2015 20:28

Y'a pas de distinguo entre frais de financement frais de change dépôt/retrait...

Good job ! C'est mon fichier excel qui ca me faire la tête si je ne l'utilise plus :lol:

Re: The Report Tool - Logiciel de reporting via les API

par Epitaf » 25 Juil 2015 03:23

Ho ben encore mieux que ce que je souhaitais programmer :-)
Je ne connais pas le python, j'ai testé la version source après avoir tout bien installé et .. rien, une page cmd qui s'affiche et disparait en un centième de seconde :D

L'exe s'execute bien :-) ( mais si quelqu'un a une idée pour mon soucis avec la source .. :-) )

Articles en relation
Outil de trading & reporting full-js
par Benoist » 12 Sep 2015 07:28 (1 Réponses)
ProRealTime

Alors partagez-le 5 fois c'est bon pour la santé