주식 손익분기점 계산기
매수가 | 수수료 | 손익분기 Tick |
0 |
주식 거래 시 주의할 점은 매도 금액의 0.3 % 세금이 발생한다는 것이다.
만약 내가 산 주식이 1주에 10,000원이라고 할 때 10,000 * 0.003 = 30 원이 세금으로 나가게 된다.
또한, 본인이 거래하는 증권사 정책에 따라 MTS, HTS 등의 거래 방식에 따라서 수수료도 발생하게 된다.
따라서, 내가 매수 / 매도를 같은 가격에 한다고 해서 본전 치기가 될 수 없다는 얘기이다.
그래서 나는 주식 거래할 때 궁금한 건 내가 매수한 금액에서 몇 Tick 이상으로 팔아야 내가 최소한의 손해를 보지 않는가가 궁금했다. 주식 시장에서 말하는 1 Tick 은 주식 시장 최소 가격 변동 단위를 의미한다.
먼저 주식 시장 최소 가격 변동 단위인 Tick 규칙부터 알아보자.
코스피 시장의 호가
주식의 현재 가 (1주) | 1 Tick (1원) | 최소 스프레드 비율 (%) |
---|---|---|
1,000원 이상 ~ 5,000원 미만 | 5원 | 0.1 ~ 0.5 % |
5,000원 이상 ~ 10,000원 미만 | 10원 | 0.1 ~ 0.2 % |
10,000원 이상 ~ 50,000원 미만 | 50원 | 0.1 ~ 0.5 % |
50,000원 이상 ~ 100,000원 미만 | 100원 | 0.1 ~ 0.2 % |
100,000원 이상 ~ 500,000원 미만 | 500원 | 0.1 ~ 0.5 % |
500,000원 이상 | 1,000원 | 0.2% 이하 |
코스닥 시장의 호가
주식의 현재 가 (1주) | 1 Tick (1원) | 최소 스프레드 비율 (%) |
---|---|---|
1,000원 이상 ~ 5,000원 미만 | 5원 | 0.1 ~ 0.5 % |
5,000원 이상 ~ 10,000원 미만 | 10원 | 0.1 ~ 0.2 % |
10,000원 이상 ~ 50,000원 미만 | 50원 | 0.1 ~ 0.5 % |
50,000원 이상 | 100원 | 0.2 % 이하 |
위와 같이 주식의 현재 호가에 따라 최소 거래 단위가 달라지게 된다.
위 조건에 따라 내가 필요한 호가 손익분기점이 몇 틱인가 ? 에 대한 계산은 다음과 같다.
- 매수가격 : A 원
- 거래 수수료 : B %
- 거래 세금 : 0.3 %
- 1 틱 금액 : C 원
- 손익 분기 틱 : N 틱
- 계산 식 : A < (A + N * C) * (1 - B/100 - 0.003)
- 최소 N 의 값 공식
항목 | 변수 | 예시 값 |
---|---|---|
매수 가격 | A 원 | 48,000 원 |
거래 수수료 | B % | 0.1% |
거래 세금 | 0.3% | 0.3% |
1 틱 금액 | C 원 | 50 원 |
손익 분기 틱 | N 틱 | 약 4틱 |
위의 예시처럼 공식에 나온 N 의 값에 올림 값을 한 결과가 최소 손익 분기 틱 값이 된다.
48,000원 호가의 주식에는 대략적으로 4틱 이상은 팔아야 내가 손해를 보지 않는 다는 것이다.
이 수식을 또 함수화 해보면 다음과 같다.
코드 (Javascript)
xxxxxxxxxx
function get_tick(value) {
var cospy_tick_range_list = new Array();
cospy_tick_range_list = [
{"min":1000,"max":5000,"tick":5},
{"min":5000,"max":10000,"tick":10},
{"min":10000,"max":50000,"tick":50},
{"min":50000,"max":100000,"tick":100},
{"min":100000,"max":500000,"tick":500},
{"min":500000,"max":10000000,"tick":1000}
];
var i = 0;
for (i = 0; i < cospy_tick_range_list.length; i++) {
var tick_range = cospy_tick_range_list[i];
if (tick_range['min'] <= value && value < tick_range['max']) {
return tick_range['tick'];
}
}
};
function get_minimum_tick(value, fees) { // unit of fees is %
// value is A, fee is B
var tick = get_tick(value); // C
var min_tick = ((value / (0.997 - fees / 100)) - value) * (1 / tick)
return Math.ceil(min_tick);
};
console.log(get_minimum_tick(48000, 0.1));
결과 값
xxxxxxxxxx
> 4
위 함수를 직접 수행해볼 수 있는 사이트는 이곳이 있다. (https://hashcode.co.kr/code_runners?language=javascript)
이러한 계산 값으로 주식 매수 시 최소한의 손해 보지 않는 매도가 금액을 미리 설정해 놓으면 좋을 듯 하다.
마냥 오르면 제일 좋겠지만 손절 시 최대한 손해 없이 해보려 한다
'주식 공부' 카테고리의 다른 글
[주식거래자동화] 05. Kiwoom API 설치 및 테스트 (0) | 2020.12.06 |
---|---|
[주식거래자동화] 04. Django 에 PostgreSQL 연동 (0) | 2020.10.20 |
[주식거래자동화] 03. VSCode 에 Python 개발 환경 설정 (2) | 2020.10.19 |
[주식거래자동화] 02. Django 설치 및 실행 (0) | 2020.10.18 |
[주식거래자동화] 01. EC2 Windows Server 개발환경 구축 (0) | 2020.10.18 |