Finance:Outil de récupération de données financières/AppliFiMag/Manuel utilisateur APIFiMag

De Ensiwiki
Aller à : navigation, rechercher

Windows.png  Windows 

AppliFiMag.png AppliFiMag

Développeurs Luc Ballot, Anthony El Toukhy, Yahia Guergachi, Adam Kumbhar

Cette page correspond au manuel utilisateur de l'API du projet APIFiMag.

Elle a été réalisée dans le cadre du projet de spécialité "Récupération de données financières" 2013.

Pour retourner à la page principale du projet, veuillez suivre le lien ci-dessous :
Page d'accueil


Ce manuel utilisateur est aussi disponible au format PDF ici : Fichier:Doc api.pdf


Installation

Dans un projet Visual Studio 2010, ajouter en référence notre API et inclure les lignes

  using APIFiMag ;
  using APIFiMag.Datas ;
  using APIFiMag.Importer ;
  using APIFiMag.Exporter ;

Construction d'un objet Data

Pour stocker les données, nous utilisons une classe

  abstract public class Data

Selon le type de données voulu, il faut utiliser le constructeur de la classe héritée correspondant

Données historiques sur des cours

  public DataActif(List<string> symbol,
                   List<HistoricalColumn> columns, 
                   DateTime debut, 
                   DateTime fin)

Récupération de cours en temps réel

  public DataRealTime(string symbol)

Taux d'intérêts interbancaires

  public DataIRate(InterestRate symbol, DateTime debut, DateTime fin)

Taux de change récupérés via fxtop.com

  public DataFXTop(Currency symbol,
                   List <Currency> columns,
                   DateTime debut, 
                   DateTime fin,
                   Frequency freq)

Récupération à partir d'un fichier de configuration XML

  public DataXML(XmlDocument doc)

Exemple

Pour construire un objet contenant des données de taux de change :

  List<Currency> curr = new List<Currency>();
  curr.Add(Currency.USD);
  curr.Add(Currency.JPY);
  curr.Add(Currency.LBP);
  DataFXTop xchange = new DataFXTop(Currency.EUR, curr,
  new DateTime(2012, 6, 9),
  DateTime.Now,
  Frequency.Yearly);

Récupération de données

Une fois un objet de type Data construit, il reste à remplir son champ
DataSet Table
Pour cela on appelle la méthode
public void ImportData(Import i)
en choisissant l’implémentation de l’interface Import voulue parmi :


  • Pour des données historiques sur des cours via YahooFinance
  public class ImportYahoo


  • Pour des données historiques sur des cours via GoogleFinance
  public class ImportGoogle


  • Pour des cours en temps réel (prix, bid et ask)
  public class ImportReal


  • Pour des taux d’intérêts
  public class ImportEBF


  • Pour des taux de change
  public class ParserFXTop


Par exemple, après avoir construit un objet DataActif donnees_histo pour des données historiques :

  donnees_histo.ImportData(new ImportYahoo());


Ou pour des taux d’intérêts, avec un objet DataIRate donnees_taux :

  donnees_taux.ImportData(new ImportEBF());

Exportation de données

Classes d’exportation de données qui implémentent l’interface Export :

  public class ExportCSV
  public class ExportJSON
  public class ExportMDF
  public class ExportXML

Les constructeurs associés sont :

  public ExportCSV(string filePath, CultureInfo culture)
  public ExportCSV(string filePath)
  public ExportJSON(string filePath)
  public ExportMDF(string filePath)
  public ExportXML(string filePath)

Dans le cas de l’exportation en format CSV le paramètre optionnel CultureInfo culture permet de spécifier la norme voulue.

En effet dans la norme française les séparateurs sont des points-virgules, dans les autres normes ce sont des virgules. Si le paramètre n’est pas spécifié, c’est la culture de la machine exécutant le programme qui est choisie.


Exemple d’utilisation avec une donnée Data d qui a été remplie au préalable :

  d.Export(new ExportCSV("output_format_CSV.csv", new CultureInfo("en-US")));

Exemple simpliste de programme

  using APIFiMag ;
  using APIFiMag.Datas ;
  using APIFiMag.Importer ;
  using APIFiMag.Exporter ;

  // On veut récupérer des taux de change sur fxtop.com,
  // on commence par construire un DataFXTop

  List<Currency> curr = new List<Currency>();
  curr.Add(Currency.USD);
  curr.Add(Currency.JPY);
  curr.Add(Currency.LBP);

  // Ici, on s’intéresse à l’euro par rapport aux autres :
  // EUR/USD, EUR/JPY, EUR/LBP

  DataFXTop xchange = new DataFXTop(Currency.EUR,
                                    curr,
                                    new DateTime(2012, 6, 9),
                                    DateTime.Now,
                                    Frequency.Yearly);

  // On récupère les données, on les parse et on remplit xchange

  xchange.ImportData(new ParserFXTop());

  // On exporte les données récupérées, dans le format de notre choix, ici CSV

  xchange.Export(new ExportCSV("recupFxTop.csv"));