커뮤니티
지표식 문의드립니다
2017-04-23 17:56:36
203
글번호 109076
안녕하세요
아래 시스템식을 차트에서 표현되도록 지표식을 작성하여 주시면 감사하겠습니다
plot 함수 이용해주세요
plot1(???, "매수1");
plot2(???, "매수2");
plot3(???, "매도1");
plot4(???, "매도4");
input : len(6.8), len1(0.005);
//디마크 설정
If dayOpen>dayClose(1) Then { //시가가 전일종가보다 크면
Var1=(dayHigh(1)+dayClose(1)+2*dayLow(1))/2-dayLow(1);
Var2=(dayHigh(1)+dayClose(1)+2*dayLow(1))/2-dayHigh(1);
}
Else if dayOpen<dayClose(1) Then {//시가가 전일종가보다 작으면
Var1=(2*dayHigh(1)+dayClose(1)+dayLow(1))/2-dayLow(1);
Var2=(2*dayHigh(1)+dayClose(1)+dayLow(1))/2-dayHigh(1);
}
Else {//두조건다 아니라면
Var1=(dayHigh(1)+2*dayClose(1)+dayLow(1))/2-dayLow(1);
Var2=(dayHigh(1)+2*dayClose(1)+dayLow(1))/2-dayHigh(1);
}
Condition1= date==exitdate(1) And marketposition(1)==1; //최근청산날짜가 금일이고 직전이 매수
Condition2= date==exitdate(1) And marketposition(1)==-1;//최근청산날짜가 금일이고 직전이 매도
//진입
if EntriesToday(date) <1 Then {
If stime < 120000 Then
If Condition1==False and MarketPosition <> 1 Then {
If dayOpen>var1 and Bids > asks Then //시가가 var1보다 크면
buy("매수1",Atstop,dayOpen+(Var1-var2)*len1);//지정가 상향돌파시 매수
If dayOpen<var2 and Bids > asks Then //시가가 var2보다 작으면
buy("매수4",Atstop,Var2); //지정가 상향돌파시 매수
}
If Condition2==False and MarketPosition <> -1 Then {
If stime < 120000 Then
If dayOpen>var1 and Bids < asks Then //시가가 var1보다 크면
sell("매도1",Atstop,Var1);//지정가 하향돌파시 매도
If dayOpen<var2 and Bids < asks Then //시가가 var2보다 작으면
sell("매도4",Atstop,dayOpen-(Var1-var2)*len1); //지정가 하향돌파시 매도
}
}
//청산
If marketposition<>0 Then {
exitlong("매수청산",Atstop,highest(high,barssinceentry+1)-atr(20)*len);
exitshort("매도청산",Atstop,lowest(low,barssinceentry+1)+atr(20)*len);
}
#당일 청산
SetStopEndofday(1450);
답변 1
예스스탁 예스스탁 답변
2017-04-24 17:01:49
안녕하세요
예스스탁입니다.
진입의 잔량조건등은 plot으로 라인처리가 되지 않습니다.
조건에서 사용하는 지정값만 지표로 표시되게 작성해 드립니다.
input : len(6.8), len1(0.005);
If dayOpen>dayClose(1) Then {
Var1=(dayHigh(1)+dayClose(1)+2*dayLow(1))/2-dayLow(1);
Var2=(dayHigh(1)+dayClose(1)+2*dayLow(1))/2-dayHigh(1);
}
Else if dayOpen<dayClose(1) Then {
Var1=(2*dayHigh(1)+dayClose(1)+dayLow(1))/2-dayLow(1);
Var2=(2*dayHigh(1)+dayClose(1)+dayLow(1))/2-dayHigh(1);
}
Else {
Var1=(dayHigh(1)+2*dayClose(1)+dayLow(1))/2-dayLow(1);
Var2=(dayHigh(1)+2*dayClose(1)+dayLow(1))/2-dayHigh(1);
}
plot1(dayOpen+(Var1-var2)*len1, "매수1");
plot2(Var2, "매수2");
plot3(Var1, "매도1");
plot4(dayOpen-(Var1-var2)*len1, "매도4");
즐거운 하루되세요
> 버핏 님이 쓴 글입니다.
> 제목 : 지표식 문의드립니다
> 안녕하세요
아래 시스템식을 차트에서 표현되도록 지표식을 작성하여 주시면 감사하겠습니다
plot 함수 이용해주세요
plot1(???, "매수1");
plot2(???, "매수2");
plot3(???, "매도1");
plot4(???, "매도4");
input : len(6.8), len1(0.005);
//디마크 설정
If dayOpen>dayClose(1) Then { //시가가 전일종가보다 크면
Var1=(dayHigh(1)+dayClose(1)+2*dayLow(1))/2-dayLow(1);
Var2=(dayHigh(1)+dayClose(1)+2*dayLow(1))/2-dayHigh(1);
}
Else if dayOpen<dayClose(1) Then {//시가가 전일종가보다 작으면
Var1=(2*dayHigh(1)+dayClose(1)+dayLow(1))/2-dayLow(1);
Var2=(2*dayHigh(1)+dayClose(1)+dayLow(1))/2-dayHigh(1);
}
Else {//두조건다 아니라면
Var1=(dayHigh(1)+2*dayClose(1)+dayLow(1))/2-dayLow(1);
Var2=(dayHigh(1)+2*dayClose(1)+dayLow(1))/2-dayHigh(1);
}
Condition1= date==exitdate(1) And marketposition(1)==1; //최근청산날짜가 금일이고 직전이 매수
Condition2= date==exitdate(1) And marketposition(1)==-1;//최근청산날짜가 금일이고 직전이 매도
//진입
if EntriesToday(date) <1 Then {
If stime < 120000 Then
If Condition1==False and MarketPosition <> 1 Then {
If dayOpen>var1 and Bids > asks Then //시가가 var1보다 크면
buy("매수1",Atstop,dayOpen+(Var1-var2)*len1);//지정가 상향돌파시 매수
If dayOpen<var2 and Bids > asks Then //시가가 var2보다 작으면
buy("매수4",Atstop,Var2); //지정가 상향돌파시 매수
}
If Condition2==False and MarketPosition <> -1 Then {
If stime < 120000 Then
If dayOpen>var1 and Bids < asks Then //시가가 var1보다 크면
sell("매도1",Atstop,Var1);//지정가 하향돌파시 매도
If dayOpen<var2 and Bids < asks Then //시가가 var2보다 작으면
sell("매도4",Atstop,dayOpen-(Var1-var2)*len1); //지정가 하향돌파시 매도
}
}
//청산
If marketposition<>0 Then {
exitlong("매수청산",Atstop,highest(high,barssinceentry+1)-atr(20)*len);
exitshort("매도청산",Atstop,lowest(low,barssinceentry+1)+atr(20)*len);
}
#당일 청산
SetStopEndofday(1450);
다음글
이전글