1. 분봉 기준입니다
Trigger를 H[1] - L[1] 라고 설정한 뒤,
H[1] - L[1] < H[2] - H[2] 이고
C[1] + trigger면 매수, C[1] - trigger면 매도하려고 합니다
청산은 매수한 봉의 종가에 이루어집니다
한글로 풀어쓰면 아래와 같습니다.
변동성을 봉의 고가와 저가의 차라고 정의하고,
전봉의 변동성이 전전봉의 변동성보다 작고
전봉 종가에서 변동성을 더한 값을 상승 돌파하면 매수하려고 합니다
아래와 같이 만들어보았으나 매매시점이 다르게 나옵니다
2. 그리고 첫 신호는 무시하고 두 번째 신호부터 매매할 수 있을까요?
감사합니다
---------
input : Mult(1);
var : trigger(0),vol1(0),vol2(0);
vol1 = H[1] - l[1] ;
vol2 = H[2] - l[2] ;
trigger = Vol1 * Mult;
# 진입식
If vol1 < vol2 and MarketPosition == 0 Then
{
if H < C[1] + trigger Then
Buy("long",AtStop,C[1] + trigger);
if L > C[1] - trigger Then
Sell("short",AtStop,C[1] - trigger);
}
# 청산식
If MarketPosition != 0 Then
{
exitlong();
exitshort();
}
답변 1
예스스탁
예스스탁 답변
2020-09-11 13:35:47
안녕하세요
예스스탁입니다.
1-1
종가기준 진입으로 작성하면 아래와 같습니다.
input : Mult(1);
var : trigger(0);
trigger = H - L;
if trigger[1] < trigger[2] Then
{
if MarketPosition <= 0 and C > C[1]+trigger*Mult Then
Buy("b");
if MarketPosition >= 0 and C < C[1]+trigger*Mult Then
Sell("s");
}
if MarketPosition == 1 and C < C[BarsSinceEntry] Then
ExitLong();
if MarketPosition == 1 and C > C[BarsSinceEntry] Then
ExitShort();
1-2
C[1] + trigger를 터치하면 즉시 매수,
C[1] - trigger를 터치하면 즉시 매도하고자 하시면 아래와 같습니다.
atstop은 봉완성시 가격을 셋팅하고
다음봉의 현재가가 해당 가격조건이상(매수)이나 이하(매도)이면 즉시 진입합니다.
그러므로 아래와 같이 봉완성시 H[0] - L[0] < H[1] - L[1]조건이면
완성봉의 C를 기준으로 가격을 셋팅하게 작성하셔야 합니다.
input : Mult(1);
var : trigger(0);
trigger = H - L;
if trigger < trigger[1] Then
{
if MarketPosition <= 0 Then
Buy("b",AtStop,C+trigger*Mult);
if MarketPosition >= 0 Then
Sell("s",AtStop,C-trigger*Mult);
}
if MarketPosition == 1 and C < C[BarsSinceEntry] Then
ExitLong();
if MarketPosition == 1 and C > C[BarsSinceEntry] Then
ExitShort();
2
올려주신 내용은 가상으로 거래를 체크해야 하는 부분입니다.
시스템의 수식내용에 따라 달리 작성되고 식을 작성하는데 많은 시간이 걸리는 내용이라
저희쪽에서 답변을 드리기 어렵습니다.
도움을 드리지 못해 죄송합니다.
즐거운 하루되세요
> 산이보리 님이 쓴 글입니다.
> 제목 : 수식 의뢰 부탁드립니다.
> 1. 분봉 기준입니다
Trigger를 H[1] - L[1] 라고 설정한 뒤,
H[1] - L[1] < H[2] - H[2] 이고
C[1] + trigger면 매수, C[1] - trigger면 매도하려고 합니다
청산은 매수한 봉의 종가에 이루어집니다
한글로 풀어쓰면 아래와 같습니다.
변동성을 봉의 고가와 저가의 차라고 정의하고,
전봉의 변동성이 전전봉의 변동성보다 작고
전봉 종가에서 변동성을 더한 값을 상승 돌파하면 매수하려고 합니다
아래와 같이 만들어보았으나 매매시점이 다르게 나옵니다
2. 그리고 첫 신호는 무시하고 두 번째 신호부터 매매할 수 있을까요?
감사합니다
---------
input : Mult(1);
var : trigger(0),vol1(0),vol2(0);
vol1 = H[1] - l[1] ;
vol2 = H[2] - l[2] ;
trigger = Vol1 * Mult;
# 진입식
If vol1 < vol2 and MarketPosition == 0 Then
{
if H < C[1] + trigger Then
Buy("long",AtStop,C[1] + trigger);
if L > C[1] - trigger Then
Sell("short",AtStop,C[1] - trigger);
}
# 청산식
If MarketPosition != 0 Then
{
exitlong();
exitshort();
}