[일상] 일봉 데이터 형태 변경하기

지금 개발 중인 것은 BNF 매매 기법입니다. BNF는 일본 투자가가 공개한 기법으로 25MA와 현재가 괴리가 큰 경우에 매수하여 단타로 빠져나오는 기법입니다.

https://blog.naver.com/soso64194/221769245361

이를 위해서는 이동평균값(이하 이평)을 실시간으로 계산을 할 수 있어야 합니다. 이를 위해서는 이평을 처리하는 클래스가 필요한데요. 내용이 간단하기 때문에 직접 개발하고 있습니다.

BNF에서는 25일 MA 값을 사용하였는데, 요즘은 25일 보다 20일 MA를 많이 사용하고 있지 않나요? 이전에 토요일까지 거래를 할 때는 1달이 25일 정도였지만 지금은 20일이 한달이어서 20일 MA를 많이 사용하고 있는 것으로 압니다만. 암튼 20이냐 25냐는 또 하나의 변수에 지나지 않겠죠.

관건은 괴리율 얼마에 매수를 할 것이며, 얼마의 수익을 보고 팔것인가에 따라 수익률은 다르게 나올 것 같습니다. 이건 각 트레이더의 감에 맡겨야겠죠.

이 기법을 적용하려면 우선 괴리율을 알아야합니다. 즉 종목별 일봉 자료가 필요합니다.

종목별 일봉 데이터는 이베스트 xing api 중 t8413 TR로 얻을 수 있습니다. 10분에 200번 조회가 가능하니 한 종목 검색 후 4초 sleep을 주면 전 종목 일봉 데이터를 받을 수 있습니다. 이렇게 받은 일봉 데이터를 종목별로 파일에 저장합니다.

06-23-02.png

그런데 봉 데이터를 만들기 위해서는 일별로 전 종목 데이터가 있으면 더 편합니다. 그래서 종목별 일봉 데이터를 읽어서 일별 전 종목 데이터로 변환하는 작업을 먼저했습니다.

소스코드는 아래 github 참고하세요. 이 파일을 앞으로 시스템 트레이딩 시스템을 만들 때 사용할 lib들을 모아놓는 파이썬 프로그램이 될 것입니다.

https://github.com/multizone-quant/system-trading/blob/master/j_oss.py

MA 계산을 제대로 했는지 확인하기 위하여 우선 20MA 값을 구해보았습니다. 같은 값이 나오는군요.

06-23-03.png

다음에는 BNF 기법을 개발하는 과정에 대하여 기술하도록 하겠습니다.


Comments
Steemie currently dosen't allow you to make comments. If you want to write something, write it using another frontend (like Steemit)
Click there to view this post on Steemit.com
  • @cheetah

    Hi! Did you know that steemit.com is now censoring users and posts based on their opinions? All the posts of these users are gone! https://github.com/steemit/condenser/commit/3394af78127bdd8d037c2d49983b7b9491397296

    Here's a list of some banned users: 'roelandp', 'blocktrades', 'anyx', 'ausbitbank', 'gtg', 'themarkymark', 'lukestokes.mhth', 'netuoso', 'innerhive' See anyone you recognize? There could be more, they also have a remote IP ban list.

    Will you be censored next?