본문 바로가기

Algorithmic Trading

증권사 API 자동매매 #005 - 전략은 어떻게 만들죠?

 

[이전 글]

2021/01/26 - [Algorithmic Trading] - 증권사 API 자동매매 #004 - 기본에서 출발해봅시다.

[그리고 계속]

 

이제 본격적으로 전략을 만들어야 할 단계입니다.

여러분들은 어떻게 전략을 만드십니까?

그리고 그건 또 어떻게 프로그래밍을 해서, 프로그램이 알아듣게 만들죠?

 

 

 

그림 1.

 

 

우리는 어쨌든 인터넷 환경, API 를 사용해서 개발하는 것이 주제니까요.

도식화하면 위와 같습니다.

 

State Transition Diagram 이라는 개념을 사용합니다.

저렇게 개념도를 그리고 나면,

각 상태에 따라 프로그램이 어떤 행동을 해야 할지

좀 더 명확해지게 됩니다.

 

따라서, 머릿속의 모든 전략은 저렇게 State Transition Diagram 을 통해 만드시면 됩니다.

 

 

그림 2.

 

 

어? 그런데, 왜 도대체 자꾸 영어를 쓰는 거죠?

라고 물으신다면, 대답해 드리는 게 인지상정!

프로그래밍에 저 상태 이름을 그대로 쓰려고 하는 겁니다.

 

현재로서는 프로그래밍을 한글로 하지 않습니다.

여러 단체와 여러 사람들이 한글로 프로그래밍을 할 수 있는 프로젝트를 진행했지만 모두 힘들어진 것 같다

현재로서는 대세가 아니라서, 사용하기가 좀 곤난 난감한 점이 있습니다.

 

영어로 프로그래밍을 하면서, 실제로 State 관리를 합니다.

디버깅을 할 때에도

"어? 지금은 ST_Monitoring 상태인데 왜 갑자기 저런 행동을 하지?"

라고 프로그램 오류를 잡아낼 수 있기 때문입니다.

 

 

결론으로 종합해보자면,

1. 전략은 State Transition Diagram 으로 만들어진다.

2. State Transition Diagram 을 사용하면, 만들고자 하는 전략의 각 상태에 따라 

  어떤 일을 해야 하는지, 어떤 일을 시킬 것인지 좀 더 명확해진다.

3. STD(State Transition Diagram)를 영어로 만드는 이유는 프로그래밍에 그대로 사용할 것이기 때문이다.

4. STD 로 작성된 전략은, 디버깅 혹은 프로그램 오류를 잡아낼 때 도움이 된다.