커뮤니티
필터 관련 문의 드립니다.
2011-10-17 17:32:30
600
글번호 43801
안녕하세요..
항상 도움 주셔서 감사합니다.
필터 관련 수식 문의 입니다.
나름 여타 책에 나온 전략들을 짤수 있다 싶었더니..
공부하면 할수록 난관이 많네요..
각각 다른 필터인데요..
1. 전거래가 손실이면 중단 후 가상거래 후 수익이면 다시 시작
2. mdd 경신시 중단 후 가상거래 후 수익이면 다시 시작
이런 필터 입니다..
블로그나 인터넷에 찾아보니.. 고스트라고.. 가짜 변수를 쭈욱 잡아놓고.. check해서 하던데..
100%소스오픈도 없고..
혼자하기 힘들어 염치 불구하고 여쭈어 봅니다...
답변 1
예스스탁 예스스탁 답변
2011-10-18 10:20:42
안녕하세요
예스스탁입니다.
문의하신 내용은 전략 별로 작성내용이 많이 차이가 나고
마춰보면서 작성되어야 하는 수식이라 간단한 예제만 올려드립니다.
참고하시기 바랍니다.
1.
var1 = ma(C,5);
var2 = ma(c,20);
#매수조건
if crossup(var1,var2) Then{
value1 = C;
#직전거래가 손실이 아니면 매수
if !(PositionProfit(1) < 0) Then
buy("b");
#직전거래가 손실이면 청산이후에 매수조건이 최소2번이상 만족한 시점에
#매수조건만족시 종가-청산조건만족시종가가 0이상일때 진입
if PositionProfit(1) < 0 and value2 > 0 and countif(crossup(var1,var2),BarsSinceExit(1)) >= 2 Then
buy("bb");
}
#청산조건
if CrossDown(var1,var2) Then{
ExitLong("bx");
value2 = c-value1;
}
2.
var1 = ma(C,5);
var2 = ma(c,20);
#매수조건
if crossup(var1,var2) Then{
value1 = C;
# 최근 청산시점의 최대손실폭을 비교하여 최대손실폭이 낮아졌으면 true 아니면 false
if MaxIDDrawDown[BarsSinceExit(1)] < MaxIDDrawDown[BarsSinceExit(2)] Then
Condition1 = true;
Else
Condition1 = false;
# false일때
if Condition1 == false Then
buy("b");
# true이면 청산이후에 매수조건이 최소2번이상 만족한 시점에
#매수조건만족시 종가-청산조건만족시종가가 0이상일때 진입
if Condition1 == true and value2 > 0 and countif(crossup(var1,var2),BarsSinceExit(1)) >= 2 Then
buy("bb");
}
#청산조건
if CrossDown(var1,var2) Then{
ExitLong("bx");
value2 = c-value1;
}
즐거운 하루되세요
> HI_dllee 님이 쓴 글입니다.
> 제목 : 필터 관련 문의 드립니다.
> 안녕하세요..
항상 도움 주셔서 감사합니다.
필터 관련 수식 문의 입니다.
나름 여타 책에 나온 전략들을 짤수 있다 싶었더니..
공부하면 할수록 난관이 많네요..
각각 다른 필터인데요..
1. 전거래가 손실이면 중단 후 가상거래 후 수익이면 다시 시작
2. mdd 경신시 중단 후 가상거래 후 수익이면 다시 시작
이런 필터 입니다..
블로그나 인터넷에 찾아보니.. 고스트라고.. 가짜 변수를 쭈욱 잡아놓고.. check해서 하던데..
100%소스오픈도 없고..
혼자하기 힘들어 염치 불구하고 여쭈어 봅니다...
다음글