커뮤니티
수식 압축하는 방법
1.전에 만들어 주신 파라볼릭 계산하는 수식입니다. 이게 변수 바로 아래 너무 길게 있어서 변수하고 진입과 청산식을 한번에 보기가 어렵습니다. 혹시 단 몇줄로 압축한다든가 하는 방법이 있으면 좀 알려주세요! if EP != 0 Then { if Direction == 1 then { EP = HighValue; SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value); if High > HighValue then { HighValue = High; AF_Value = AF_Value + AF; if AF_Value >= AFmaX then AF_Value = AFmaX; } if Low < SAR_Value then { Direction = -1; SAR_Value = EP; AF_Value = 0; EP = 0; LowValue = low; } } else { EP = LowValue; SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value); if Low < LowValue then { LowValue = Low; AF_Value = AF_Value + Af; if AF_Value >= AFmaX then AF_Value = AFmaX; } if High > SAR_Value then { Direction = 1; SAR_Value = EP; AF_Value = 0; EP = 0; HighValue = High; } } Sarv = SAR_Value; } else { if SAR_Value != 0 && EP == 0 then { if Direction == 1 then { EP = HighValue; AF_Value = AF; SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value); if High > HighValue then { HighValue = High; AF_Value = AF_Value + AF; if AF_Value >= AFmaX then AF_Value = AFmaX; } } else { EP = LowValue; AF_Value = Af; SAR_Value = SAR_Value + AF_Value * (EP - SAR_Value); if Low < LowValue then { LowValue = Low; AF_Value = AF_Value + AF; if AF_Value >= AFmaX then AF_Value = AFmaX; } } Sarv = SAR_Value; } else { if Direction == 0 then { if Close > Close[1] then Direction = 1; else if Close < Close[1] then Direction = -1; } else { if Direction == 1 then { if Close < Close[1] then { Direction = -1; SAR_Value = HighValue; Sarv = SAR_Value; } } if Direction == -1 then { if Close > Close[1] then { Direction = 1; SAR_Value = LowValue; Sarv = SAR_Value; } } } LowValue = min(Low, LowValue); HighValue = max(High, HighValue); } 2..일봉상 ema를 가져오고 60분봉상 adx를 가져와서 시장판단만 하고 지표계산은 60분봉으로 하여60분봉으로 진입청산식을 만드는게 가능한가요? 예를 들면 아래와 같이 Var :DailyEMA200(0), ADX(0),regime(0); DailyEMA200 = EMA(Close of Data2, 200); (60분봉상 )ad = ADX(14 ); Regime = 0; { 1=상승장, -1=하락장/폭락장, 0=횡보 } If Close of Data2 > DailyEMA200 and ADX > 20 then Regime = 1 { 상승장 } Else If Close of Data2 < DailyEMA200 and ADX > 20 then Regime = -1 { 하락장 } Else Regime = 0 { 횡보 / 박스권 } 시장판단을 하고 { --- 60분봉상 메인 지표 계산 --- } Var Sarv(0), MC(0), MS(0), OS(0); Sarv = SAR(0.02, 0.2); MC = MACD(10,21); MS = EMA(MC,7); OS = MC - MS; If Regime = 1 and CrossUp(Close, Sarv) and OS > 0 and Close > Close[1] then Begin Buy("Long") next bar at market; 만약 위의 식이 잘못 되었다면 일봉의 데이터를 적용하고 분봉상으로 매매진입하는 방법을 좀 알려주세요 3.. mvar1 = Sarv+(AF_value)*(EP-SAR_Value); mvar2 = MAX(var1,EntryPrice- EntryATR*ATr1); mvar3 = Min(var1,EntryPrice+ EntryATR*1.5); if marketPosition == -1 and Direction == -1 Then { ExitShort("sx1",AtStop,mvar3); ExitShort("sx3",AtLimit,EntryPrice-entryatr*5,"",1,1); } 이 청산식은 파라볼릭반전신호와 atr*1.5 중 비교하여 으로 손절을하라는 내용과 파라볼릭반전신호와 atr*5값중에서 둘중에 먼저 도달하는 지표에 청산하라는 내용이 다 들어간게 맞는건가요? 요지는 파라볼릭 돌파가 손절과 익절에 모두 작동하는지요? 질문이 너무 길어서 죄송합니다.
답변 1
예스스탁 예스스탁 답변
2025-12-01 13:36:49