삼각차익거래에 관해서
- 블루아이
- 12,367
슈퍼스타님이였나 삼각차익거래에 대해여 질문하셨던거 같아서 좀 찾아서 올려봅니다.
-----
pepci(http://pepic.tistory.com/0님 블로그에서 펌한 내용입니다.
시스템 트레이딩에는 다양한 전략이 있을 수 있습니다.
많은 시스템 트레이딩 전략들은 확률적으로 수익을 발생시키고 있는데,
전략들 중에는 확률이 아닌 100% 수익을 내는 전략들도 있습니다.
(물론 확률이론을 기반한 차익거래 전략도 있습니다.)
그런 대표적인 방법이 차익거래를 하는 것입니다.
차익거래는 기본적으로 A 시장과 B 시장에 가격 차이가 발생을 했을 때,
이를 이용하여 싼 곳에서 사고, 비싼 곳에서 파는 행위입니다.
공간과 시간의 차이, 그리고 정보의 차이에 의해서 이러한 가격의 불균형이
생기게 되고, 차익거래자들에 의해 이러한 균형이 없어지고,
상품은 적정 가격을 유지하게 됩니다.
큰 시장으로 보면 무역이 이러한 차익거래 행위가 되겠죠.
무역도 어떻게 보면 정보의 부족에 의해서 발생이 성립이 된다고 할 수도 있죠.
인터넷으로 인해 세계적으로 정보 차이가 줄어들어 무역기회 곧 차익거래 기회가
줄어들고 있다고 하네요.
외환시장에도 알려져 있는 몇 가지 차익거래 유형이 있는데요.
그 중 대표적인 것이 삼각통화 차익거래입니다.
삼각통화 차익거래의 기회는 순간 생겼다 순간 사라지기 때문에
수동거래로는 불가능하며, 이제는 시스템 트레이딩으로만 거래가 가능합니다.
엄청난 자본의 메이져 세력들이 언제든 차익거래기회가 발생하면
자동으로 거래를 할 준비를 하고, 24시간 쉬지 않고 컴퓨터가 돌아가고 있습니다.
그런 이유로 저도 그냥 메타트레이더 EA로 가능할까라는 생각을 했는데요.
개발을 하고 실험을 해보니 일단 가능하다는 것을 알게 되었습니다.
그래서 시스템 트레이딩 전략의 하나로 삼각통화 차익거래를 소개하고자 합니다.
삼각통화 차익거래 관련한 책들을 찾아보면 보통 다음과 같은 공식을 볼 수 있는데요
뭐 cross rate가 1이면 아닐 때 삼각통화 차익거래 기회가 발생한다. 그런 식으로 설명이 되어 있습니다.
국내에 나와 있는 외환이나 차익거래 책들도 다 비슷한 말을 합니다.
하지만 이런 공식을 가지고 실전으로 삼각통화 차익거래를 할 수 없습니다.
가장 큰 이유는 거래 수수료가 있다는 것입니다.
거래 수수료를 생각한다면 차익거래는 다음 공식으로 다시 생각을 해야 됩니다.
가장 먼저, 유로달러를 사는 방법이 몇 가지가 있다는 것을 이해해야 됩니다.
첫번재로 유로달러를 사는 방법은 유로달러를 그냥 하나 사는 것이고
두번째 방법은 유로파운드를 사고 파운드 달러를 또 사는 것입니다. 이것은 유로 달러를 사는 것과 똑같습니다.
유로달러를 산다 = 유로를 사고, 달러를 판다.
유로파운드를 사고, 파운드달러를 산다. = 유로를 사고, 파운드를 판다, 파운드를 사고, 달러를 판다. = 유로를 사고, 달러를 판다.
그래서 결국 둘은 같은 것입니다.
유로달러를 사는 방법 하나를 EURUSDa 라고 하고 다른 방법을 EURUSDb 라고 합시다.
그리고, 방법 a로 나는 수익금을 PROFITa 라고 하고 b로 나는 수익금을 PROFITb라고 한다면
수익은 PROFITa + PROFITb > 0 일때 수익이 나겠죠?
결국 싸게 사고 비싸게 파는게 수익이니
PROFITa = EURUSDa sell - EURUSDa buy 이고
PROFITb = EURUSDb sell - EURUSDb buy 입니다.
PROFITa + PROFITb > 0 을 다시 정리하면
EURUSDa sell - EURUSDa buy + EURUSDb sell - EURUSDb buy > 0
이것은 바로
EURUSDa sell - EURUSDb buy > EURUSDa buy - EURUSDb sell
이게 바로 차익거래 공식인데요.. ㅎㅎ 이 공식 활용하면 삼각통화 뿐만 아니라, 4각통화, 5각통화도 가능하죠.
EURUSDa sell > EURUSDb buy 일때 포지션을 열고
EURUSDa buy < EURUSDb sell 일때 포지션을 정리하시면 100% 확률로 수익입니다.
물론 반대도 가능하겠죠.
EURUSDa sell > EURUSDb buy
이걸 달리 말하면 EURUSD sell price > EURGBP buy price * GBPUSD buy price 일 때입니다.
평상시에는 수수료 때문에 당연히 부등호가 반대로 되어 있습니다.
실험을 해보니 메타트레이더에서도 일주일에 몇 번 정도 저런 상태가 나타납니다.
이 로직을 적용하면 100% 수익입니다.
그러나.... 이것은 저뿐만 아니라 이미 알려진 정보입니다. ㅋ
알려진 정보로는 더 이상 수익을 낼 수가 없습니다.
이 시스템 트레이딩 전략의 가장 핵심은 이 수식이 아니라, 이러한 거래가 가능한 브로커입니다.
위 전략은 사실상 무위험이 아닙니다. 위험 요소가 딱 하나 있습니다.
3번의 거래가 무사히 원하는 가격안에서 잘 이루어지는 것입니다.
하나라도 거래가 실패한다면, 50:50 도박입니다. ㅎㅎ
그리고 보통 차익거래는 많이 걸고, 조금 먹기 때문에, 어떻게 보면 리스크가 더 클 수도 있습니다.
모의 거래에서는 확실히 돈 법니다. ㅎㅎ
실제 거래에서는 거래 실패의 가능성이 있기 때문에 거래의 안정성이 높은 브로커를 찾는게 시스템 트레이딩의 로직의
핵심이라고 말씀 드리는 것입니다.
시스템 트레이딩으로 해도 돈 쉽게 버는 게 아니라, 많은 노하우가 필요로 합니다.
몇 달전에 이걸 만들었는데, 브로커 찾으면서 실험을 계속 하고 있습니다.
거래 안정성을 높이도록 프로그램도 계속 수정보완 하고, 정말 여러가지 해보고 있죠.
거래 안정성이 높은 곳을 하나 찾은 것 같기는 한데 아직은 더 테스트하고 조율을 해야 할 것 같습니다.
----
삼각통화 차익거래를 실계좌에서 테스트 하고 있는 내용입니다.
이렇게 한번 거래에 3개씩 들어갑니다.
테스트 거래에서는 잘 되던데..
실거래에서는 큰 랏으로 이렇게 거래하는 것을 막은 브로커가 많네요.
이걸 뚫을 방법에 대해서는 연구를 좀 더 해봐야 할 것 같습니다.
코멘트 (21)
아핫 ㅋㅋ 올리셧군요.. 참고로 제 전략은 삼각차익거래는 아니구요 -_- 각 브로커간의 호가 차이로 이익을 취하는 전략입니다.;; 두 전략의 차이는 은근히 큽니다.. 삼각차익거래의 경우 가격의 갭이 '언젠간' 같아지는 것을 예상하고 진입하는 것이고 브로커간호가차익의 경우는 가격의 갭이 '반드시' 같아지기때문에 리스크가 0%라는거죠ㅋㅋ;;
그래서 삼각차익거래에서 포지션을 장기간 보유해야되는 상황이 종종 나옵니다.. 그래서 거기에 마틴을 걸어 이익을 좀더 빨리 취하게 도와주는 방법도 있구요ㅋㅋ으헤헤..
결국 두 브로커사의 호가를 연동시켜서 차이가 날때 진입하는 방법이라는거죠?
그래서 파일로 각 호가를 연동하기 위해 FileWrite함수를 여쭤본거고요 ^^
네 맞아요 ㅎㅎ 위 글에 내용에서도 있지만 그런 호가차이 큰 브로커쌍을 찾는게 이 전략의 핵심이에요 근데 문제는 실거래에서 이 전략이 먹히느냐인듯... ㅠㅠ 담주되면 실계좌로 테스트해보고 결과는 쪽지로 말씀드릴께여 ㅋㅋ 으아~~ 빨리 담주가 와랏~~
파일 리딩 라이팅은 동시에 진행되면 문제가 발생될 소지가 있긴한데..
저같으면 파이프통신을 이용해보겠네요 ^^
ㅠㅠ 이런.. 진작에좀 물어볼껄.. ㅋㅋ 첨에 그 문제로 고민하다가 그냥 읽는 구조와 쓰는구조를 따로 만들어버렷어요 ㅋㅋ
그나저나 파이프통신.. 첨 들어보는데 검색해봐야겠군요^^ 정보감사용!~
무위험 차익거래 아비트리지는 실거래에서 불가능합니다. 슬리피지와 주문거부 때문입니다.
물론 스프레드 제로이거나 주문거부가 없는 브로커이면 가능하지만 결국은 불가능입니다.
이러한 차익거래가 가능한 유형은 스포츠베팅밖에 없습니다.
Arbitrage 거래를 허용하는 브로커는 거의 없습니다.
계좌는 바로 닫히고 수익은 몰수할 것이며, 원금은 환불될 것입니다.
^^,,, 헤헤. 그리고 Arbitrage는 실거래에서 개인이 실행하기 불가능합니다.
회선의 속도와 체결속도.
아참! 데모는 가능합니다^^
이걸~~ 한 계좌에서 하는게 아니라.. 각각 다른 실계좌에서 삼각차익거래를 하는것은 가능할까요?
만약 각각의 브로커가 정확히 5데미컬 소숫점까지 일치하게 움직이고 스프레드도 같다면 가능하겠지요.
같은브로커라면!
EA로 운용하셔야 할껀데 해당 계좌마다
해당 페어에 대한 Ordersend 명령어를 주석처리하시면 됩니다.
근데.. 슬리피지와 평균체결속도 변동성스프레드는 수익에 많은 지장을 줄것입니다.
생각 한번 해볼께요. 방법이 있나. ㅎ
윗글은 그냥 지껄인겁니다. 말이 안되네요. 다시 읽어보니까, 무시하세용;
로리몰리// 네 일반적인 방법으로는 불가능합니다 그러나.. 일반적이지 않은 방법으로는 가능합니다;;
한율// 네 물론 이 전략은 사람의 반응속도로 따라하기가 힘들기에.. EA가 절실하지요.. 그리고 브로커마다 차이가 발생하긴합니다만 같은 호가를 제공받는 브로커끼리는 digits의 차이를 시스템에서 잡아줄 수 있어서 이 문제는 무시될 수 있습니다.
그리고 저 같은 경우는 위 전략과는 조금 다른 무위험 전략을 사용중입니다.
참고로 조언을 해드리자면 무위험 전략들의 경우 수익을내는 것 보다 손실을 내는것이 더 중요합니다...
어... 슈스님 감사합니다.
님 댓글보고 개쩌는 아이디어가 생각났네요..
당장 EA코딩하러 가야겠네여.. ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ
아.. 기분조아
다들 새 복 많이~
Enchante 2012 =)
우리에겐.. Closeall(); 이라는 명령어가 있으니까요 =)
MQL이여 영원하라.
http://kyle1681.cafe24.com/DetailedStatement.htm
는 서비스
한율// 실계좌에서 저렇게 돌리시면 딜러들의 관심을 좀.. 많이? 받으실겁니다ㅎㅎ
아무튼 건투를 빕니다!
@한율 위 데이터는~~~ 삼각차익거래 데이터인가요?
블루아이//
전 삼각차익같이 눈가리고 아웅하는 전략은 쓰지 않습니다. 반칙이잖아요 ㅋ 그리고 코딩은 쉽지만, 슬리피지가 합쳐지면 결과는 안드로메다로 갈수 있고여.. ㅋ 기본적으로 대박을 꿈꾸는 사람이라면, 10랏 20랏을 걸어도, 1랏, 2랏을 베팅할때와 같은 결과가 나오도록 만들어야 하는게 기본이라 생각하며, 삼각차익거래는 브로커가 막아놓고 호가업체를 보호하기 위해 이익금을 전부 회수할수도 있습니당 ~! ...
위 데이터는. 3개 차트를 동시에 분석하여 가장 힘이 약한 페어에 올인하는 고런 데이터 입니다. 물론. 실거래에서는 돌려본적없습니다. 우선 저런 그래프는 믿을수가 없습니다^^; 문제는 유달,파달,유파.. 3개로 하면 안통한다는 겁니다...
유엔,달엔,유달... 로 해도 안통하구여.... 변동성 적은 페어를 써야 하는 것같습니다.
이말은 곧.. 폐기할겁니다 와 같은 내용입니다 .. ㅎ 개발자가 멍청해서 하나밖에 할줄모르는 아이가 태어난것 같네여 ㅋ
역시 제 고향인 EUR/GBP, EUR/CHF, USD/JPY, USD/CAD 에서 놀아야 겟어요.. ㅋ
@한율 좋은 말씀 감사합니다.
방금 forexlive.com 기사를 읽었는데..
"SNB에서 CHF-EUR-USD를 대상으로 삼각차익 거래를 하는 것 같다"라는 요지의 내용을 읽었네요..
반칙을 하는 주체가 있을 수 있다는 얘기를 읽은 것 같네요.. ㅎㅎ
참, SNB는 Swiss National Bank. 스위스 중앙 은행입니다.