커뮤니티
수식부탁드립니다
2010-04-07 19:10:37
607
글번호 29209
현재 아래의 식을 이용해서 매매시험중인데요, 이식을 돌려보면 볼린저 상단이 벌어질때 매수가 이루어지는데, 대부분 매수자리가 다소 느려서 금방꺽여버릴경우
늦은 매수로 인해서 금방손절이 이루어집니다.
따라서 이 수식을 기본으로 사용하면서 다음의 수식을 넣고자 하는데 부탁드립니다.
1) 볼린저하단으로 주가가 계속밀리다가 봉이 볼린저 내부로들어갈때(즉 하단과 내부에서 이격이커질때, 즉, 주가가 하락하다가 횡보하기 시작하거나 상승할때) 1%이상 이격이 커지면 1차로 매수를 하고 청산은 원래식에 따르도록 하고싶습니다.
2) 물론 아래의 매매식을 따라서 매수도 같이 이루어지고 청산도 원래의 청산식을 따르도록 하고싶습니다.
다시설명드리면 매수 패턴은 2가지 매도패턴은 한가지입니다.
각각의 조건에 만족하면 매수가 각각이루어 지고, 매도는 한가지 조건이 만족하면 매수되어 있는 물량이 청산이 이루어지도록 하고싶습니다.
아래의 수식에 수정을 해주시면 감사하겠습니다.수고하세요~
항상친절한 답변 감사드립니다
/*
1. 시스템명 : New Market Paradigm
2. 전략내용 : 볼린져밴드가 확대될때 N봉 최고가 + X point 도달시 매수, N봉 최저가 - X point 도달시 매도
3. 볼린져 밴드의 조건을 확대, 축소, 같은방향으로 움직일때를 구분해서 작성한 내용이 눈에 띔
*/
Input: Length(28),StdVal(2), xpoint(0.1);
Vars: NewMarketParadigm(0), NmpC(0),NmpE(0),NmpT(0),Trigger(0);
value1 = BollBandUp(Length,StdVal); //볼린져밴드 상단선
value2 = BollBandDown(Length,StdVal); //볼린져밴드 하단선
Condition1 = value1 < value1[1] and value2 > value2[1]; //밴드폭이 축소(상단선은 하락 하단선은 상승)되는 경우 true 이외의 경우 false를 저장
Condition2 = value1 > value1[1] and value2 < value2[1]; //밴드폭이 확대(상단선은 상승 하단선은 하락)되는 경우 true 이외의 경우 false를 저장
Condition3 = Condition1 == False and Condition2 == False; //같은 방향으로 움직이면 true 반대방향(확대되거나 축소되면)으로 움직이면 false
IF Condition1 then NewMarketParadigm = 1; //A조건이 참이면 NewMarketParadigm에 1저장
IF Condition2 then NewMarketParadigm = 2; //B조건이 참이면 NewMarketParadigm에 2저장
IF Condition3 then NewMarketParadigm = 3; //C조건이 참이면 NewMarketParadigm에 3저장
#1
If NewMarketParadigm == 1 then
NmpC = NmpC + 1;
Else
NmpC = 0;
If NewMarketParadigm == 2 then //밴드폭이 확대(상단선은 상승 하단선은 하락)되면
NmpE = NmpE + 1 ; //NmpE에 1씩 증가
Else
NmpE = 0;
If NewMarketParadigm == 3 then
NmpT = 1;
Else
NmpT = 0;
#2
Condition4 = NmpE > 1;
If Condition4 then begin //밴드가 연속 2봉 이상 확대되면
Trigger = 1; //Trigger에 1저장
End;
#3
If stime >= 90100 and Trigger == 1 then begin //밴드가 연속 2봉 이상 확대되고
Buy("B1", atstop, Highest(High,20) + Xpoint); //N봉고가 + X point도달시 매수
Sell("S1", atstop, Lowest(Low,20) - Xpoint); //N봉저가 - X point 도달시 매도
End;
답변 1
예스스탁 예스스탁 답변
2010-04-08 11:14:28
안녕하세요
예스스탁입니다.
이격이 상단과 하단사이의 이격인지 주가와 하단밴드간의 차이인지
정확히 모르겠습니다. 주가와 하단밴드간의 차이로 적성했습니다.
/*
1. 시스템명 : New Market Paradigm
2. 전략내용 : 볼린져밴드가 확대될때 N봉 최고가 + X point 도달시 매수, N봉 최저가 - X point 도달시 매도
3. 볼린져 밴드의 조건을 확대, 축소, 같은방향으로 움직일때를 구분해서 작성한 내용이 눈에 띔
*/
Input: Length(28),StdVal(2), xpoint(0.1);
Vars: NewMarketParadigm(0), NmpC(0),NmpE(0),NmpT(0),Trigger(0);
value1 = BollBandUp(Length,StdVal); //볼린져밴드 상단선
value2 = BollBandDown(Length,StdVal); //볼린져밴드 하단선
Condition1 = value1 < value1[1] and value2 > value2[1]; //밴드폭이 축소(상단선은 하락 하단선은 상승)되는 경우 true 이외의 경우 false를 저장
Condition2 = value1 > value1[1] and value2 < value2[1]; //밴드폭이 확대(상단선은 상승 하단선은 하락)되는 경우 true 이외의 경우 false를 저장
Condition3 = Condition1 == False and Condition2 == False; //같은 방향으로 움직이면 true 반대방향(확대되거나 축소되면)으로 움직이면 false
IF Condition1 then NewMarketParadigm = 1; //A조건이 참이면 NewMarketParadigm에 1저장
IF Condition2 then NewMarketParadigm = 2; //B조건이 참이면 NewMarketParadigm에 2저장
IF Condition3 then NewMarketParadigm = 3; //C조건이 참이면 NewMarketParadigm에 3저장
#1
If NewMarketParadigm == 1 then
NmpC = NmpC + 1;
Else
NmpC = 0;
If NewMarketParadigm == 2 then //밴드폭이 확대(상단선은 상승 하단선은 하락)되면
NmpE = NmpE + 1 ; //NmpE에 1씩 증가
Else
NmpE = 0;
If NewMarketParadigm == 3 then
NmpT = 1;
Else
NmpT = 0;
#2
Condition4 = NmpE > 1;
If Condition4 then begin //밴드가 연속 2봉 이상 확대되면
Trigger = 1; //Trigger에 1저장
End;
#3
If stime >= 90100 and Trigger == 1 then begin //밴드가 연속 2봉 이상 확대되고
Buy("B1", atstop, Highest(High,20) + Xpoint); //N봉고가 + X point도달시 매수
Sell("S1", atstop, Lowest(Low,20) - Xpoint); //N봉저가 - X point 도달시 매도
End;
# 주가가 하단밴드를 하향이탈하면 Condition99는 true
if CrossDown(c,value2) Then
condition99 = true;
if crossup(c,value2*1.01) and # 주가가 하단밴드+1%를 상향돌파
Condition99 == true and # Condition99는 true
C >= C[1] Then{ #주가는 전봉대비 상승하거나 같음
buy("b"); #매수
Condition99 = false; #매수후 Condition99는 false
}
즐거운 하루되세요
> WT_ruky753 님이 쓴 글입니다.
> 제목 : 수식부탁드립니다
> 현재 아래의 식을 이용해서 매매시험중인데요, 이식을 돌려보면 볼린저 상단이 벌어질때 매수가 이루어지는데, 대부분 매수자리가 다소 느려서 금방꺽여버릴경우
늦은 매수로 인해서 금방손절이 이루어집니다.
따라서 이 수식을 기본으로 사용하면서 다음의 수식을 넣고자 하는데 부탁드립니다.
1) 볼린저하단으로 주가가 계속밀리다가 봉이 볼린저 내부로들어갈때(즉 하단과 내부에서 이격이커질때, 즉, 주가가 하락하다가 횡보하기 시작하거나 상승할때) 1%이상 이격이 커지면 1차로 매수를 하고 청산은 원래식에 따르도록 하고싶습니다.
2) 물론 아래의 매매식을 따라서 매수도 같이 이루어지고 청산도 원래의 청산식을 따르도록 하고싶습니다.
다시설명드리면 매수 패턴은 2가지 매도패턴은 한가지입니다.
각각의 조건에 만족하면 매수가 각각이루어 지고, 매도는 한가지 조건이 만족하면 매수되어 있는 물량이 청산이 이루어지도록 하고싶습니다.
아래의 수식에 수정을 해주시면 감사하겠습니다.수고하세요~
항상친절한 답변 감사드립니다
/*
1. 시스템명 : New Market Paradigm
2. 전략내용 : 볼린져밴드가 확대될때 N봉 최고가 + X point 도달시 매수, N봉 최저가 - X point 도달시 매도
3. 볼린져 밴드의 조건을 확대, 축소, 같은방향으로 움직일때를 구분해서 작성한 내용이 눈에 띔
*/
Input: Length(28),StdVal(2), xpoint(0.1);
Vars: NewMarketParadigm(0), NmpC(0),NmpE(0),NmpT(0),Trigger(0);
value1 = BollBandUp(Length,StdVal); //볼린져밴드 상단선
value2 = BollBandDown(Length,StdVal); //볼린져밴드 하단선
Condition1 = value1 < value1[1] and value2 > value2[1]; //밴드폭이 축소(상단선은 하락 하단선은 상승)되는 경우 true 이외의 경우 false를 저장
Condition2 = value1 > value1[1] and value2 < value2[1]; //밴드폭이 확대(상단선은 상승 하단선은 하락)되는 경우 true 이외의 경우 false를 저장
Condition3 = Condition1 == False and Condition2 == False; //같은 방향으로 움직이면 true 반대방향(확대되거나 축소되면)으로 움직이면 false
IF Condition1 then NewMarketParadigm = 1; //A조건이 참이면 NewMarketParadigm에 1저장
IF Condition2 then NewMarketParadigm = 2; //B조건이 참이면 NewMarketParadigm에 2저장
IF Condition3 then NewMarketParadigm = 3; //C조건이 참이면 NewMarketParadigm에 3저장
#1
If NewMarketParadigm == 1 then
NmpC = NmpC + 1;
Else
NmpC = 0;
If NewMarketParadigm == 2 then //밴드폭이 확대(상단선은 상승 하단선은 하락)되면
NmpE = NmpE + 1 ; //NmpE에 1씩 증가
Else
NmpE = 0;
If NewMarketParadigm == 3 then
NmpT = 1;
Else
NmpT = 0;
#2
Condition4 = NmpE > 1;
If Condition4 then begin //밴드가 연속 2봉 이상 확대되면
Trigger = 1; //Trigger에 1저장
End;
#3
If stime >= 90100 and Trigger == 1 then begin //밴드가 연속 2봉 이상 확대되고
Buy("B1", atstop, Highest(High,20) + Xpoint); //N봉고가 + X point도달시 매수
Sell("S1", atstop, Lowest(Low,20) - Xpoint); //N봉저가 - X point 도달시 매도
End;
다음글
이전글