예스랭귀지 공부 시작한지 일주일 입 니다.
수식을 만들어 봤는데 성능테스트에서 아무른 결과값이 없네요.
로직은 ;
당일 전고점 돌파시 매수
당일 저점과 전고점의 차이만큼 상승시 매수청산
조건 : 진입시점은 20분봉기준 27번째봉 이후, 현재봉과 전고점봉 사이의 봉갯수는 6
이상
제가 만든 수식입니다, 잘못된 곳 수정 부탁 드힙니다.
var: No1(0), No2(0),기준봉1(0), 기준봉2(0);
if H==dayhigh() then {
기준봉1=H;
No1=Index;
}
if L==daylow() then{
기준봉2=L;
No2=index;
}
condition1; index>=27 && index-No1>=6;
if condition1=1 && crossup(c,기준봉1) then{
buy("돌파",atmarket,def,def);
}
if c-entryprice>=(기준봉1-기준봉2) then{
exitlong("하트");
}
감사합니다.
답변 1
예스스탁
예스스탁 답변
2020-06-25 10:54:21
안녕하세요
예스스탁입니다.
1
condition1; index>=27 && index-No1>=6;
변수에 값을 저장할때는
변수 = 값;
형식이 되어야 합니다
condition1 = index>=27 && index-No1>=6;
2
if condition1=1 &&
condition1은 true나 false가 저장됩니다.
그러므로 conditiom1에 저장된 값이 true이지 false인지를 확인하셔야 하며
비교문에서 같다라는 표현은 == 입니다.
condition1 == true
3
현재봉이 기존봉1보다 크면 현재봉이 최고가 발생봉이므로
조건이 성립할수가 없습니다.
현재 새로운 고점이 발생했는데 직전에 고점을 돌파할때 신호가 발생하게 하셔야 합니다.
4
수정한 식입니다.
var : No1(0), No2(0),기준봉1(0), 기준봉2(0);
var : No11(0),기준봉11(0);
if H==dayhigh() then
{
기준봉1 = H;
기준봉11 = 기준봉1[1];
No1 = Index;
No11 = No1[1];
}
if L==daylow() then
{
기준봉2 = L;
No2 = index;
}
condition1 = index>= 27 && No1-No11 >= 6;
if condition1 == true && crossup(c,기준봉1[1]) then
{
buy("돌파",atmarket,def,def);
}
if MarketPosition == 1 and c >= entryprice+(기준봉1-기준봉2) then{
exitlong("하트");
}
즐거운 하루되세요
> 여울 님이 쓴 글입니다.
> 제목 : 수식 관련 문의드립니다.
> 예스랭귀지 공부 시작한지 일주일 입 니다.
수식을 만들어 봤는데 성능테스트에서 아무른 결과값이 없네요.
로직은 ;
당일 전고점 돌파시 매수
당일 저점과 전고점의 차이만큼 상승시 매수청산
조건 : 진입시점은 20분봉기준 27번째봉 이후, 현재봉과 전고점봉 사이의 봉갯수는 6
이상
제가 만든 수식입니다, 잘못된 곳 수정 부탁 드힙니다.
var: No1(0), No2(0),기준봉1(0), 기준봉2(0);
if H==dayhigh() then {
기준봉1=H;
No1=Index;
}
if L==daylow() then{
기준봉2=L;
No2=index;
}
condition1; index>=27 && index-No1>=6;
if condition1=1 && crossup(c,기준봉1) then{
buy("돌파",atmarket,def,def);
}
if c-entryprice>=(기준봉1-기준봉2) then{
exitlong("하트");
}
감사합니다.