커뮤니티
수식 확인 부탁드립니다
2016-06-21 13:06:09
239
글번호 99344
48326 질문에 대한 답변을 적용한 결과 신호가 발생하지 않습니다
확인 부탁드립니다
감사합니다
- 1. 99868_01.gif (0.04 MB)
- 2. 99868_02.GIF (0.06 MB)
답변 1
예스스탁 예스스탁 답변
2016-06-21 13:13:16
안녕하세요
예스스탁입니다.
변수가 잘못되어 수정했습니다.
올려주신 내용에서는 천정과 바닥이 20봉 최고가 최저가입니다.
20봉 최고가를 기록하면
음전환횟수를 다시 카운트 하고 음전환횟수만 카운트 합니다.
20봉 최저가를 기록하면
양전환횟수를 다시카운트하고 양전환횟수만 다시 카운트 합니다.
2번식은 추가진입이 이루어 지므로
피라미딩을 모든진입설정으로 지정하고 적용하셔야 합니다.
이후에 내용은 아래 식의 주석참고하셔서
수정보완해 사용하시기 바랍니다.
1
Input : af(0.02), maxAF(0.2);
var : HH(0),LL(0),T(0),양전환횟수(0),음전환횟수(0);
var1 = SAR(af,maxAF);
HH = highest(H,20);
LL = lowest(L,20);
#20개봉 최고가를 상향돌파하면 양전환횟수는 0으로 초기화
if crossup(c,HH[1]) Then{
T = 1;
음전환횟수 = 0;
}
#20개봉 최저가를 하향이탈하면 음전환횟수는 0으로 초기화
if CrossDown(c,LL[1]) Then{
T = -1;
양전환횟수 = 0;
}
#최근 20개봉 최고가 돌파가 발생
if T == 1 then{
if crossdown(c,var1) Then{
음전환횟수 = 음전환횟수+1;
if 음전환횟수 == 2 Then
sell();
}
}
#최근 20개봉 최저가 이탈이 발생
if T == -1 then{
if CrossUp(c,var1) Then{
양전환횟수 = 양전환횟수+1;
if 양전환횟수 == 2 Then
buy();
}
}
2
Input : af(0.02), maxAF(0.2);
var : HH(0),LL(0),T(0),양전환횟수(0),음전환횟수(0);
var1 = SAR(af,maxAF);
HH = highest(H,20);
LL = lowest(L,20);
#20개봉 최고가를 상향돌파하면 양전환횟수는 0으로 초기화
if crossup(c,HH[1]) Then{
T = 1;
음전환횟수 = 0;
}
#20개봉 최저가를 하향이탈하면 음전환횟수는 0으로 초기화
if CrossDown(c,LL[1]) Then{
T = -1;
양전환횟수 = 0;
}
#최근 20개봉 최고가 돌파가 발생
if T == 1 then{
if crossdown(c,var1) Then{
음전환횟수 = 음전환횟수+1;
if 음전환횟수 >= 2 and 음전환횟수 <= 5 Then
sell();
}
}
#최근 20개봉 최저가 이탈이 발생
if T == -1 then{
if CrossUp(c,var1) Then{
양전환횟수 = 양전환횟수+1;
if 양전환횟수 == 2 and 양전환횟수 <= 5 Then
buy();
}
}
if MarketPosition == 1 and MaxEntries == 5 and CrossDown(c,var1) Then
ExitLong();
if MarketPosition == -1 and MaxEntries == 5 and CrossUp(c,var1) Then
ExitShort();
즐거운 하루되세요
> 타이쿤 님이 쓴 글입니다.
> 제목 : 수식 확인 부탁드립니다
> 48326 질문에 대한 답변을 적용한 결과 신호가 발생하지 않습니다
확인 부탁드립니다
감사합니다