예제 #1
0
def test_remote_data_service_daily_quited():
    ds = RemoteDataService()
    
    # test daily
    res, msg = ds.daily('600832.SH', fields="",
                        start_date=20140828, end_date=20170831,
                        adjust_mode=None)
    assert msg == '0,'
    assert res.shape == (175, 13)
예제 #2
0
def test_remote_data_service_daily():
    ds = RemoteDataService()
    
    # test daily
    res, msg = ds.daily('rb1710.SHF,600662.SH', fields="",
                        start_date=20170828, end_date=20170831,
                        adjust_mode=None)
    assert msg == '0,'
    
    rb = res.loc[res.loc[:, 'symbol'] == 'rb1710.SHF', :]
    stk = res.loc[res.loc[:, 'symbol'] == '600662.SH', :]
    assert set(rb.columns) == {'close', 'code', 'high', 'low', 'oi', 'open', 'settle', 'symbol',
                               'trade_date', 'trade_status', 'turnover', 'volume', 'vwap'}
    assert rb.shape == (4, 13)
    assert rb.loc[:, 'volume'].values[0] == 189616
    assert stk.loc[:, 'volume'].values[0] == 7174813
예제 #3
0
def my_globals(request):
    ds = RemoteDataService()

    df, msg = ds.daily("000001.SH, 600030.SH, 000300.SH",
                       start_date=20170801,
                       end_date=20170820,
                       fields="open,high,low,close,vwap,preclose")
    ds.api.close()

    multi_index_names = ['trade_date', 'symbol']
    df_multi = df.set_index(multi_index_names, drop=False)
    df_multi.sort_index(axis=0, level=multi_index_names, inplace=True)

    dfx = df_multi.loc[pd.IndexSlice[:, :], pd.IndexSlice['close']].unstack()
    dfy = df_multi.loc[pd.IndexSlice[:, :], pd.IndexSlice['open']].unstack()

    parser = Parser()
    request.function.func_globals.update({
        'parser': parser,
        'dfx': dfx,
        'dfy': dfy
    })