
568
4
부
알고리즘 트레이딩
14.3.2
스트리밍 데이터 받기
알고리즘 트레이딩 전략을 백테스팅하려면 과거 데이터가 중요하지만 실제로 매매를 자동화하
려면 실시간 스트리밍 데이터를 받을 수 있어야 한다.
FXCM
API
를 사용하면 모든 종목에 대
해 실시간 데이터 스트리밍이 가능하다.
fxcmpy
패키지가 이러한 기능을 제공한다. 실시간 데
이터 스트림에 대해 사용자가 지정한 콜백 함수
callback
function
를 쓸 수 있다.
다음은 받은 데이터 중 일부를 출력하는 간단한 콜백 함수와 이를 이용해서 실시간으로 원하는
환율(여기에서는
EUR
/
USD
) 데이터를 받는 것을 보인다.
In [40]: def output(data, dataframe):
print('%3d | %s | %s | %6.5f, %6.5f'
% (len(dataframe), data['Symbol'],
pd.to_datetime(int(data['Updated']), unit='ms'),
data['Rates'][0], data['Rates'][1]))
➊
In [41]: api.subscribe_market_data('EUR/USD', (output,))
➋
1 | EUR/USD | 2018-10-19 11:36:39.735000 | 1.14694, 1.14705
2 | EUR/USD ...