다음과 같은 프로그램을 작성하고 싶습니다.
해당 거래일의 첫번째 봉의 시가에 매수를 하고 첫번째 봉이 양봉인 경우, 매수를 한 전략은 이익이 발생하므로 두번째 봉의 시가에 특정한 이익을 더한 높은 가격에 청산하고 그 가격에 다시 매수를 한다. 만일 첫번째 봉이 음봉인 경우, 다음봉의 시가에 청산하고 그 가격에 다시 매수한다. 이러한 것을 해당 거래일의 마지막 봉까지 계속적으로 매수만 하는 프로그램을 작성하고 싶습니다. 이를 다음과 같이 작성했는데 맞는지 체크 부탁합니다.
kospi200 선물의 경우
# 첫 번째 봉의 시가를 설정
SET FIRST_OPEN = OPEN(0, 0);
# 이익을 더할 수 있는 PROFIT_MARGIN 변수 설정
SET PROFIT_MARGIN = 10;
# 예시로 10 포인트를 추가, 실제 전략에 맞게 조정 필요
# 첫 번째 봉이 양봉인지 음봉인지 확인하여 매매 전략 결정
IF CLOSE(0, 0) > FIRST_OPEN THEN
# 첫 번째 봉이 양봉일 경우: 두 번째 봉 시가에서 이익을 더한 가격에 청산 후 다시 매수
FOR I = 1 TO END SET CUR_OPEN = OPEN(0, I);
# 현재 봉의 시가
SET TARGET_PRICE = CUR_OPEN + PROFIT_MARGIN;
# 이익을 더한 목표 가격
# 첫 번째 봉이 양봉이므로 해당 가격에 청산하고 매수
SELL TARGET_PRICE SIZE 1;
# 목표 가격에 청산
BUY CUR_OPEN SIZE 1;
# 현재 시가에 매수
NEXT
ELSE
# 첫 번째 봉이 음봉일 경우: 두 번째 봉 시가에서 청산 후 다시 매수
FOR I = 1 TO END
SET CUR_OPEN = OPEN(0, I);
# 현재 봉의 시가 # 첫 번째 봉이 음봉이므로 현재 시가에 청산하고 매수
SELL CUR_OPEN SIZE 1;
# 현재 시가에 청산
BUY CUR_OPEN SIZE 1;
# 현재 시가에 다시 매수
NEXT
ENDIF
답변 1
예스스탁
예스스탁 답변
2025-02-18 14:56:20
안녕하세요
예스스탁입니다.
1
문의하신 내용은 가능하지 않습니다.
"청산하고 그 가격에 다시 매수를 한다"
문의하신 내용 중 청산후 바로 또 매수를 하는데
시스템은 청산후에 동일방향진입을 하면 해당 진입도 또 다시 청산됩니다.
즉 동일시점에 청산과 동일방향 진입은 구현할 수 없습니다.
2
올리신 내용은 저희 랭귀지 문법에 맞지 않는 내용입니다.
즐거운 하루되세요
> hello 님이 쓴 글입니다.
> 제목 : kospi200 매수프로그램작성
> 다음과 같은 프로그램을 작성하고 싶습니다.
해당 거래일의 첫번째 봉의 시가에 매수를 하고 첫번째 봉이 양봉인 경우, 매수를 한 전략은 이익이 발생하므로 두번째 봉의 시가에 특정한 이익을 더한 높은 가격에 청산하고 그 가격에 다시 매수를 한다. 만일 첫번째 봉이 음봉인 경우, 다음봉의 시가에 청산하고 그 가격에 다시 매수한다. 이러한 것을 해당 거래일의 마지막 봉까지 계속적으로 매수만 하는 프로그램을 작성하고 싶습니다. 이를 다음과 같이 작성했는데 맞는지 체크 부탁합니다.
kospi200 선물의 경우
# 첫 번째 봉의 시가를 설정
SET FIRST_OPEN = OPEN(0, 0);
# 이익을 더할 수 있는 PROFIT_MARGIN 변수 설정
SET PROFIT_MARGIN = 10;
# 예시로 10 포인트를 추가, 실제 전략에 맞게 조정 필요
# 첫 번째 봉이 양봉인지 음봉인지 확인하여 매매 전략 결정
IF CLOSE(0, 0) > FIRST_OPEN THEN
# 첫 번째 봉이 양봉일 경우: 두 번째 봉 시가에서 이익을 더한 가격에 청산 후 다시 매수
FOR I = 1 TO END SET CUR_OPEN = OPEN(0, I);
# 현재 봉의 시가
SET TARGET_PRICE = CUR_OPEN + PROFIT_MARGIN;
# 이익을 더한 목표 가격
# 첫 번째 봉이 양봉이므로 해당 가격에 청산하고 매수
SELL TARGET_PRICE SIZE 1;
# 목표 가격에 청산
BUY CUR_OPEN SIZE 1;
# 현재 시가에 매수
NEXT
ELSE
# 첫 번째 봉이 음봉일 경우: 두 번째 봉 시가에서 청산 후 다시 매수
FOR I = 1 TO END
SET CUR_OPEN = OPEN(0, I);
# 현재 봉의 시가 # 첫 번째 봉이 음봉이므로 현재 시가에 청산하고 매수
SELL CUR_OPEN SIZE 1;
# 현재 시가에 청산
BUY CUR_OPEN SIZE 1;
# 현재 시가에 다시 매수
NEXT
ENDIF