답변완료
수식 문의 드립니다.
안녕하세요.
수식 작성중에 어려움이 있어, 문의 드립니다.
만들고 싶은 수식은 아래와 같습니다.
항상 많은 도움주셔서 감사드립니다.
#1
1. 거래 시간 : 07:00:00 ~ 15:00:00
2. 진입 조건식 :
1) macd Osilator(12,26,9) 가 0을 상향 돌파시, buy
2) macd Osilator(12,26,9) 가 0을 하향 돌파시, sell
3. 청산 조건식 :
1) Buy 포지션일경우, macd Osilator(12,26,9) 가 0을 하향 돌파시 청산
2) Sell 포지션일경우, macd Osilator(12,26,9) 가 0을 상향 돌파시 청산
3) 수익기준 20pt (나스닥 기준) 달성 후 10pt 까지 떨어지면 익절 후 다음진입신호 신규진입.
4) 수익기준 20pt 이상 시, 상기 청산조건식 1) & 2) 에 의해 청산 후 다음진입신호 신규진입.
4. 강제청산시간 : 15:00:00
5. 기타 : 거래 시간 내에는 조건식에 따라 거래횟수에 관계없이 진행, 강제청산시간 후 진입금지.
#2
1. 거래 시간 : 17:00:00 ~ 05:00:00(익일)
2. 진입 조건식 :
1) macd Osilator(12,26,9) 가 0을 상향 돌파시, 매수
2) macd Osilator(12,26,9) 가 0을 하향 돌파시, 매도
3. 청산 조건식 :
1) Buy 포지션일경우, macd Osilator(12,26,9) 가 0을 하향 돌파시 청산
2) Sell 포지션일경우, macd Osilator(12,26,9) 가 0을 상향 돌파시 청산
3) 수익기준 20pt (나스닥 기준) 달성 후 10pt 까지 떨어지면 익절 후 다음진입신호 신규진입.
4) 수익기준 20pt 이상 시, 상기 청산조건식 1) & 2) 에 의해 청산 후 다음진입신호 신규진입.
4. 강제청산시간 : 05:00:00(익일)
5. 기타 : 거래 시간 내에는 조건식에 따라 거래횟수에 관계없이 진행, 강제청산시간 후 진입금지.
2020-05-20
1120
글번호 139011
시스템
답변완료
문의드립니다.
다시 질문드립니다.
증거금은 부족하지 않고, 주문 시작 신호는 모든 신호입니다.
저도 백테스팅을 하면 차트에는 청산과 함께 포지션 변경이 되는데 실제로는 그렇지 않습니다.
답변에서 말씀해준대로 청산 수식을 제외한다면
포지션 0 -> 매수 신호 발생 -> 매수 포지션 -> 매도 신호 발생 -> 포지션 0
이렇게 되지 않나요?
같은 계약수만큼 진입을 하니까요.
그래서 청산 수식을 넣었습니다.
혹시 포지션이 바뀌지 않는 다른 원인이 있을까요..?
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 문의드립니다.
> 안녕하세요
예스스탁입니다.
1
수식에 문제가 없습니다.
첨부된 그림과 같이 조건만족하면 진입과 청산신호가 동시에 뜨고 있습니다.
2
진입신호함수는 반대포지션에서 자동으로 반대포지션 청산신호를 발생하므로
청산함수는 제외하셔도 됩니다.
var1 = ma(C,5);
var2 = ma(c,20);
If crossup(var1,var2) then
{
Buy();
}
If CrossDown(var1,var2) then
{
Sell();
}
3
문의하신 내용이 차트에서는 동시신호가 발생하는데
실제 주문이 되지 않는 부분이시면
증거금등의 이유로 주문거부되지 않았는지 확인하셔야 합니다.
랭귀지는 신호만 발생하기 때문에 주문이후 거부등은 체크하지 않습니다.
혹은 시스템 적용시에
시스템 트레이딩 설정창의 주문시작신호가 진입신호로 되지 있는지 확인하시기 바랍니다.
주문시작신호가 진입신호이면
시스템을 차트에 적용한 후에 첫번쨰 진입부터 주문이 집행되므로
청산과 동시에 진입신호 발생하게 되면 청산신호는 차트에 표시되지만 주문은 집행하지 않습니다.
즐거운 하루되세요
> 파랭 님이 쓴 글입니다.
> 제목 : 문의드립니다.
> 단기 이평선이 장기 이평선을 상향 돌파하면 매수하고
단기 이평선이 장기 이평선을 하향 돌파하면 매도하는 시스템에서
If 단기 이평선 상향 돌파 then
{
Exitshort();
Buy();
}
If 단기 이평선 하향 돌파 then
{
Exitlong();
Sell();
}
같이 청산 후 포지션 진입하도록 작성했는데,
확인해보니 청산만 되고 새로 진입을 안합니다..
다른 청산이나 진입 설정은 없고요.
혹시 이렇게 작성했을 때 문제가 있나요?
2020-05-20
1046
글번호 139007
시스템
답변완료
문의드립니다.
주봉을 인식시키거나, 월봉을 인식시킬때,
즉, 아래와 같은걸 구현하고 싶습니다.
저번주말까지 무포로 넘어왔으면 이번주부터 어떤 시스템신호를 발생하면 당연히 신호가 발생합니다.
그런데, 저번주에 이미 포지션을 들고 청산조건이 이루어 지지 않아,
포지션이 이번주로 넘어오면 이번주 월요일(주봉의 첫영업일)에 신호가 발생하지 않고,
저번주것이 연결됩니다.
제가 원하는건,
저번주중에 신호가 발생한건 저번주말 장종료전(주말의 마지막 영업일 종료 5분전에 청산이 이루어 지고)에 청산이 이루어 지고,
이번주는 신호가 다시 발생하기를 원합니다.
위와 똑같이 월봉도 같은 원리로 부탁드리고요....
요지는, 주봉 그리고 똑같이 월봉상 마지막 그 해당주기 5분전에 포지션청산이 이루어지고,
다음(이번주, 이번월)주기가 시작할때는 다시 신호가 발생할려면,
어떻게 설정을 해줘야 하는지요?
2020-05-20
874
글번호 139005
시스템
답변완료
문의드립니다
안녕하세요?
아래수식의 rsi(지표속성창)의 선의 표현이 기울기에 의한 빨강과 파랑으로 표현되게바꾸고싶습니다
(현재는 RSI선 설정에 근거해서 초록과빨강으로 표현되고 있음),다른선은 그냥놔두시면됩니다
도움주셔서 감사합니다
input : aLength(2),yLength(5),zLength(25),obLevel(70),osLevel(30);
var : src(0),hc(0),lc(0),top(0),bot(0),rs(0),rsiv(0),sig(0),rsiColor(0);
src = close;
hc = highest(src, aLength);
lc = lowest(src, aLength);
top = ema(ema(src - lc, yLength), zLength);
bot = ema(ema(hc - src, yLength), zLength);
rs = iff(bot != 0 , top / bot , 0);
rsiv = iff(bot == 0 , 100,iff( top == 0 , 0 , 100 - (100 / (1 + rs))));
sig = ema(rsiv, zLength);
plot1(obLevel,"obLevel",green);
plot2(50);
plot3(osLevel,"osLevel",red);
rsiColor = iff(rsiv > sig or (rsiv[1] < osLevel and rsiv > osLevel) ,green ,iff(rsiv < sig or (rsiv[1] > obLevel and rsiv < obLevel) ,red,blue));
plot4(rsiv,"rsi",rsiColor);
plot5(sig,"sig",black);
2020-05-20
1035
글번호 139003
지표
답변완료
봉 완성 stop 문의
안녕하세요?
10분봉에 아래 로직을 걸었을때요. lowLine에 걸리면 바로 stop을 하고 싶다고 할 때..
if(lowLine > L) then {
ExitLong("stopL1",AtStop, lowLine);
나머지 처리 로직~~
}
위와 같이 로직을 짜면 stop이 봉완성 시점에 나가는건가요?
if문 없이 ExitLong("stopL1",AtStop, lowLine); 이것만 걸어야 하는지.. 궁금합니다.
그리고 두번째로
ExitLong("stopL1",AtStop, lowLine1);
ExitLong("stopL2",AtStop, lowLine2);
ExitLong("stopL3",AtStop, lowLine3);
이런 식으로 로직을 짰을때,
밑에 if(stopL1 에 걸렸을 경우) { 이런식으로 로직을 짤수가 있을까요?
그리고 세번째로
ExitShort("stopS1",AtLimit,highLine);
이렇게 짜게 되면 highLine을 하회할 경우 short 청산이 나가게 되는걸까요?
항상 감사드립니다.
2020-05-19
1000
글번호 139002
시스템