커뮤니티

수식 문의드립니다

프로필 이미지
탱탱볼
2023-03-14 17:41:38
752
글번호 167163
답변완료
input : Periods(10),Multiplier(3.0),changeATR(true),showsignals(true),highlighting(true); input : short(12),long(26); var : src(0),ATr2(0),ATrv(0),upv(0),up1(0),dnv(0),dn1(0); var : trend(0),macdv(0); src = (h+l)/2; atr2 = ma(TrueRange, Periods); atrv = iff(changeATR , atr(Periods) , atr2); upv = src-(Multiplier*atrv); up1 = iff(IsNaN(upv[1]) == False,upv[1],upv); upv = iff(close[1] > up1 , max(upv,up1) , upv); dnv =src+(Multiplier*atrv); dn1 = iff(isnan(dnv[1]) == False,dnv[1], dnv); dnv = iff(close[1] < dn1 , min(dnv, dn1) , dnv); trend = 1; trend = iff(IsNaN(trend[1]) == False,trend[1], trend); trend = iff(trend == -1 and close > dn1 , 1 , IFf( trend == 1 and close < up1 , -1 , trend)); macdv = macd(short,long); if trend == 1 and trend[1] == -1 and macdv > 0 Then { Buy(); } if trend == -1 and trend[1] == 1 and macdv < 0 Then { exitlong(); } 논라값(참/거짓)이나 논리표현식이 와야 한다고 나옵니다ㅜㅜ 어디가 잘못된것일까요?
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2023-03-15 11:01:48

안녕하세요 예스스탁입니다. 1 시뮬레이션 차트에 적용하신것 같습니다. 시뮬레이션 차트는 변수최적화와 같은 기능이 있어서 외부변수가 숫자형이어야 합니다. 2 숫자형으로 변경해 드립니다. 불필요한 외부변수는 삭제해 드립니다. changeATR을 true로 지정할 때는 1, false로 지정할떄는 0으로 지정해 주시면 됩니다 3 input : Periods(10),Multiplier(3.0),changeATR(1); input : short(12),long(26); var : src(0),ATr2(0),ATrv(0),upv(0),up1(0),dnv(0),dn1(0); var : trend(0),macdv(0); src = (h+l)/2; atr2 = ma(TrueRange, Periods); atrv = iff(changeATR == 1 , atr(Periods) , atr2); upv = src-(Multiplier*atrv); up1 = iff(IsNaN(upv[1]) == False,upv[1],upv); upv = iff(close[1] > up1 , max(upv,up1) , upv); dnv =src+(Multiplier*atrv); dn1 = iff(isnan(dnv[1]) == False,dnv[1], dnv); dnv = iff(close[1] < dn1 , min(dnv, dn1) , dnv); trend = 1; trend = iff(IsNaN(trend[1]) == False,trend[1], trend); trend = iff(trend == -1 and close > dn1 , 1 , IFf( trend == 1 and close < up1 , -1 , trend)); macdv = macd(short,long); if trend == 1 and trend[1] == -1 and macdv > 0 Then { Buy(); } if trend == -1 and trend[1] == 1 and macdv < 0 Then { exitlong(); } 즐거운 하루되세요 > 탱탱볼 님이 쓴 글입니다. > 제목 : 수식 문의드립니다 > input : Periods(10),Multiplier(3.0),changeATR(true),showsignals(true),highlighting(true); input : short(12),long(26); var : src(0),ATr2(0),ATrv(0),upv(0),up1(0),dnv(0),dn1(0); var : trend(0),macdv(0); src = (h+l)/2; atr2 = ma(TrueRange, Periods); atrv = iff(changeATR , atr(Periods) , atr2); upv = src-(Multiplier*atrv); up1 = iff(IsNaN(upv[1]) == False,upv[1],upv); upv = iff(close[1] > up1 , max(upv,up1) , upv); dnv =src+(Multiplier*atrv); dn1 = iff(isnan(dnv[1]) == False,dnv[1], dnv); dnv = iff(close[1] < dn1 , min(dnv, dn1) , dnv); trend = 1; trend = iff(IsNaN(trend[1]) == False,trend[1], trend); trend = iff(trend == -1 and close > dn1 , 1 , IFf( trend == 1 and close < up1 , -1 , trend)); macdv = macd(short,long); if trend == 1 and trend[1] == -1 and macdv > 0 Then { Buy(); } if trend == -1 and trend[1] == 1 and macdv < 0 Then { exitlong(); } 논라값(참/거짓)이나 논리표현식이 와야 한다고 나옵니다ㅜㅜ 어디가 잘못된것일까요?