『壹』 java 如何实现 获取实时股票数据
一般有三种方式:
网页爬虫。采用爬虫去爬取目标网页的股票数据,去GitHub或技术论坛(如CSDN、51CTO)上找一下别人写的爬虫集成到项目中。
请求第三方API。会有专门的公司(例如网络API市场)提供股票数据,你只需要去购买他们的服务,使用他们提供的SDK,仿照demo开发实现即可。如下图所示:
『贰』 用java定义一个股票类Stock,该类包括如右图所示
public class Stock {
private String store;// 股票类属性
private String symbol;// 股票代号
private String name;// 股票名称
private BigDecimal currentPrice;// 当前时间的股票价格
private BigDecimal previouClosingPrice;// 前一天的股票值
/**
* 返回前一天变到当前时间的百分比
* @return 百分比
*/
public double getChangePercent() {
return this.currentPrice.subtract(this.previouClosingPrice).abs()
.divide(this.currentPrice, 2, BigDecimal.ROUND_HALF_EVEN)
.doubleValue();
}
/**
* 返回前一天变到当前时间的百分比
* @param currentPrice 当前时间的股票价格
* @param previouClosingPrice 前一天的股票值
* @return 百分比
*/
public double getChangePercent(BigDecimal currentPrice,
BigDecimal previouClosingPrice) {
return currentPrice.subtract(previouClosingPrice).abs()
.divide(currentPrice, 2, BigDecimal.ROUND_HALF_EVEN)
.doubleValue();
}
public String getStore() {
return store;
}
public void setStore(String store) {
this.store = store;
}
public String getSymbol() {
return symbol;
}
public void setSymbol(String symbol) {
this.symbol = symbol;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public BigDecimal getCurrentPrice() {
return currentPrice;
}
public void setCurrentPrice(BigDecimal currentPrice) {
this.currentPrice = currentPrice;
}
public BigDecimal getPreviouClosingPrice() {
return previouClosingPrice;
}
public void setPreviouClosingPrice(BigDecimal previouClosingPrice) {
this.previouClosingPrice = previouClosingPrice;
}
}
『叁』 如何用java实现股票的自动化交易
1、目前,中国股市中,股票自动化交易简称自动交易或机器交易,是投资策略家将自己的交易策略系统化了的电脑程序。这种电脑程序能够代替人在互联网上进行股票、期货、黄金、外汇等证券的交粗瞎侍易,故称智能自动化交易。
2、自动交易软件可以对接各类行情分析软件的股票预警窗口,而且在大智慧、通达信、益盟操盘手、东方财富通、新飞狐、交易开拓者等软件皆可适用。软件通过预警窗口读取用户自编公式选神搜出的股票,然后自动买卖。另外还内置了5个经典的卖出模型:破价位卖出、破XX日均线卖出、MACD死叉卖出、KDJ死叉卖出、动态止岩吵盈卖出。在股票用户自己买入股票后,不用整天盯盘,通过交易手简单的几个设置,就可以完成无人值守全自动卖出,在业界享有“平仓大师”的美名,既解决了令人纠结的艰苦的盯盘问题,又克服了贪婪、恐惧的人性弱点,该止损就止损,该止盈就卖在相对的高点,有效地规避深套和半道被主力洗出来的局面。
『肆』 java 设计一个Stock的类,这个类包括:
代码如下:
importjava.math.BigDecimal;
importjava.math.RoundingMode;
publicclassStock{
privateStringsymbol;
privateStringname;
;
privatedoublecurrentPrice;
//构造方法
publicStock(Stringsymbol,Stringname){
this.symbol=symbol;
this.name=name;
}
//
publicdoublegetChangePercent(){
return(currentPrice-previousClosingPrice)/previousClosingPrice;
}
(doublepreviousClosingPrice){
this.previousClosingPrice=previousClosingPrice;
}
publicvoidsetCurrentPrice(doublecurrentPrice){
this.currentPrice=currentPrice;
}
publicStringgetSymbol(){
returnsymbol;
}
publicStringgetName(){
returnname;
}
publicstaticvoidmain(String[]args){
Stockstock=newStock("Java","SunMircro");
stock.setCurrentPrice(4.35);//当前价格
stock.setPreviousClosingPrice(4.5);//前一交易日价格
doubled=stock.getChangePercent();//价格浮动:由于是double,下面的计算是N位小数
System.out.println("价格浮动:"+stock.getChangePercent());
//处理下
BigDecimalbd=newBigDecimal(d*100);//乘个100,是为了看效果
bd=bd.setScale(2,RoundingMode.HALF_UP);//设置2位小数,采用四舍五入
System.out.println("["+stock.getSymbol()+"]"+stock.getName()+"价格浮动:"+bd.toString()+"%");
}
}
亲,如果回答满意,亲及时采纳,你的合作是我们回答的动力,谢谢!
『伍』 股票中对应价格区间是什么意思
一般区间就是在一个范围价格来回波动,一般遇到这种情况就是有大资金进入或者有大资金抽离等等。
『陆』 如何用java读取股票数据
股票实时行情,可以通过两个方法来进行查看: 第一种,在网络搜索页面直接输入股票代码,如:000717,网络输入后,即可在搜索结果中看到,其中分时,就是该股票在当天的实时走向。 第二种,通过炒股软件,如东财,同花顺等,在开启后,直接输入
『柒』 请问怎样用Java获取股票行情历史数据新浪、搜狐、百度财经都可以......
publicclassStockConnection{
publicstaticvoidmain(String[]args){
URLur=null;
try{
//搜狐股票行情历史接口
// ur=newURL("http://q.stock.sohu.com/hisHq?code=cn_300228&start=20130930&end=20131231&stat=1&order=D&period=d&callback=historySearchHandler&rt=jsonp");
//新浪股票行情历史接口
ur=newURL("http://biz.finance.sina.com.cn/stock/flash_hq/kline_data.php?&rand=random(10000)&symbol=sh600000&end_date=20150809&begin_date=20000101&type=plain");
HttpURLConnectionuc=(HttpURLConnection)ur.openConnection();
BufferedReaderreader=newBufferedReader(newInputStreamReader(ur.openStream(),"GBK"));
Stringline;
while((line=reader.readLine())!=null){
System.out.println(line);
}
}catch(Exceptione){
//TODOAuto-generatedcatchblock
e.printStackTrace();
}
}
}