2016-08-13 31 views
-1

我想根据日期合并一系列股票价格数据。 但它不会工作。请帮忙。使用python追加股票价格数据

import pandas as pd 
import tushare as ts 


def get_all_tick(stockID): 

    dates=pd.date_range('2016-01-01',periods=5,freq='D') 
    append_data=[] 

    for i in dates: 

     stock_tick=pd.DataFrame(ts.get_tick_data(stockID,date=i)) 
     stock_tick.sort('volume',inplace=True, ascending=False) 
     stock_tick=stock_tick[:10] 
     stock_tick.sort('time',inplace=True, ascending=False) 

     append_data.append(stock_tick.iterrows()) 


get_all_tick('300243') 
+1

你是什么意思,它不会工作,你会得到错误?意外的输出?你需要提供更多的细节,如果你想帮助 – AChampion

+0

请阅读[问] – Julien

+0

我的不好。运行代码后它不显示任何内容。我想我可能会使用循环功能错误。我刚刚在两周前了解了python,并试图将其用于财务数据。 –

回答

0

目测你的代码,最明显缺少的就是一个return声明:

def get_all_tick(stockID): 

    dates=pd.date_range('2016-01-01',periods=5,freq='D') 
    append_data=[] 

    for i in dates: 

     # ... 

    return append_data 

无论是在return语句将调用get_all_tick('300243')

+0

感谢您的回复。但它没有返回任何错误,也没有发生错误。 –

1

的结果我找出自己。

def get_all_tick(stockID): 
......... 
df = pd.DataFrame() 
for i in get_date: 

    stock_tick = ts.get_tick_data(stockID, date=i) 
    stock_tick['Date']=i 
    stock_tick.sort('volume', inplace=True, ascending=False) 
    stock_tick = stock_tick[:10] 
    stock_tick.sort('time', inplace=True, ascending=False) 
    df = df.append(stock_tick) 

    df.to_excel('tick.xlsx',sheet_name='Sheet1') 

get_all_tick('300243')