Java-télécharger cours de bourse sur yahoo

albert95 Messages postés 24 Date d'inscription   Statut Membre Dernière intervention   -  
L0ore Messages postés 1 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour à tous et à toutes, forumiens, forumiennes,

Je débute en java, je suis certainement assez maladroit (non informaticien), c’est pourquoi je cherche un avis de spécialiste… de forum.


je voudrais importer des données à partir du web, pour construire des graphiques avec les données recueillies.

Première étape : téléchargement.
J’ai trouvé un code qui aurait pu me donner satisfaction, il télécharge sur yahoo. Je l’ai compilé et exécuté avec JCreator.
http://www.smartdataprocessing.com/lessons/l10.htm

Mais je ne sais pas ce qu’il télécharge et où je peux récupérer les données pour la suite du programme.

Ma question :
Puis-je savoir comment récupérer ces données dans un fichier texte, par exemple, pour ensuite l'importer à partir du disque dur et construire un graphique??
(je travaille sur windows xp)
Merci d’avance

albert

import java.net.*;
import java.io.*;
import java.util.StringTokenizer;

public class StockQuoter {
String csvString;
URL url = null;
URLConnection urlConn = null;
InputStreamReader inStream = null;
BufferedReader buff = null;

StockQuoter(String symbol){

try{
url = new
URL("http://ichart.finance.yahoo.com/table.csv?s=IBM&a=00&b=2&c=1962&d=06&e=20&f=2005&g=d&ignore=.csv"
+ symbol + "&f=sl1d1t1c1ohgv&e=.csv" );
urlConn = url.openConnection();
inStream = new
InputStreamReader(urlConn.getInputStream());
BufferedReader buff= new BufferedReader(inStream);

// get the quote as a csv string
csvString =buff.readLine();

// parse the csv string
StringTokenizer tokenizer = new
StringTokenizer(csvString, ",");
String ticker = tokenizer.nextToken();
String price = tokenizer.nextToken();
String tradeDate = tokenizer.nextToken();
String tradeTime = tokenizer.nextToken();

System.out.println("Symbol: " + ticker +
" Price: " + price + " Date: " + tradeDate
+ " Time: " + tradeTime);
} catch(MalformedURLException e){
System.out.println("Please check the spelling of the URL:"
+ e.toString() );
} catch(IOException e1){
System.out.println("Can't read from the Internet: " +
e1.toString() );
}
finally{
try{
inStream.close();
buff.close();
}catch(Exception e){
e.printStackTrace();
}
}
}

public static void main(String args[]){
if (args.length==0){
System.out.println(
"Sample Usage: java StockQuoter IBM");
System.exit(0);
}
StockQuoter sq = new StockQuoter(args[0]);
}

}

Ce code fonctionne, mais je ne sais pas où il envoie les historiques. Il faut donc que je les récupère dans un fichier texte (je crois que c’est la solution qui prend le moins de mémoire), ce fichier sera ensuite sauvegardé sur le disque dur. pour IBM, par exemple, je vais chercher les cours avec http://ichart.finance.yahoo.com/table.csv?s=IBM&a=00&b=2&c=1962&d=06&e=20&f=2005&g=d&ignore=.csv
(le code prend les données .csv)
Pour créer des graphiques, il faut récupérer les données Date, Open, High, Low, Close, Volume, Adj Close*, par la suite , lorsque je serai plus à l’aise avec java, je travaillerai sur les dates, la récupération des fichiers téléchargés et la construction des graphiques.

Donc, ma préoccupation actuelle est de transformer les historiques récupérés par StockQuoter en fichiers textes pour les sauvegarder au fur et à mesure des téléchargements.


Ps : je cherche depuis quelques semaines à traiter cette question, j’ai trouvé de la matière, mais aucune solution ne donne de résultat
http://www.cafeaulait.org/books/jnp/javanetexamples/

URL connection
http://java.sun.com/docs/books/tutorial/networking/urls/readingWriting.html
http://java.sun.com/docs/books/tutorial/networking/urls/index.html

import à partir de yahoo
http://java.sun.com/features/2002/11/hilevel_network.html


EXEMPLES
http://computing.dcu.ie/~humphrys/Notes/Networks/java.html
http://math.hws.edu/javanotes/c10/s5.html

j’ai décompilé un .jar d’une grande qualité, une petite merveille, http://robotrader.sourceforge.net/screenshots.php
j’ai cru pouvoir l’utiliser comme model pour reconstruire un programme, mais je suis incapable de me repérer dans tous les "packages"
A voir également:

2 réponses

yoshiko
 
J'ai developpé il y a qq années une appli Java qui tourne sur JDK 1.4,
envoie moi un courrier je te l'enverrai.
2
Laycram
 
Salut,

Je suis intéressé par ton appli Java ... En fait, je cherche une API java pour télécharger les cours de la bourse en temps réel ... Je laisse mon adresse : marcyal (arobase) hotmail (point) fr

Merci
0
scarface38
 
bonjour

je voudrais tester ton programme java.
merci de me contacter
didier.cottaz arobase.gmail.com
0
Gana
 
Hey Yoshiko
Tu peut m'envoyer et m'aider avec ce program ?
Merci d'avance,

Gana
0
Yoshiko
 
J'ai essayé de vous répondre mais il n'a pas vos mails ou ils ne marchent pas
je viens d'envoyer un fichier à Laycram, vous pouvez lui demander
0
TalonAchille Messages postés 2 Date d'inscription   Statut Membre Dernière intervention  
 
Je vous serais reconnaissant si vous m'enverrai le code source sur
talonachille446@yahoo.fr
0
arbob
 
J'ai trouvé un programme tout fait sur le site http://capidev.societeg.com.
Il effectue ce que tu cherches.

arbob
0