커뮤니티

수정 부탁드립니다.

프로필 이미지
산수유
2025-12-02 15:31:28
89
글번호 228593
답변완료

참고차트는 일봉차트이고 기본차트는 60분봉 차트입니다. 에스문법에 맞지 않을 부분이 많을 건데 맞게끔 수정좀 부탁드립니다.  Inputs:  atr_crash(1.5), atr_vtrig(1.7), lookback_d(7);  # 일봉 (Data2) 지표 및 변수 정의  vars: d_osc(0), r(0), entry_amt(0), d_atr_avg(0);    # 장세 판단 변수  # r=2 진입 트리거 상세 변수  vars: v_sig(false), w_sig(false), d_res_h(0), d_bb_down(0);

# 일봉 지표 계산  d_osc = Data2(MACD(10, 20, 6, 1));  d_atr_avg = Data2(avg(ATR(20), 60));  # 1. r = -2 (폭락장, 1계약 Short)  if Data2(c) < Data2(ema(c, 50)) and d_osc < 0 and Data2(c) < Data2(ema(c, 200)) and Data2(ATR(20)) > d_atr_avg * atr_crash then { r = -2; entry_amt = 1; }  # 2. r = 2 (고위험 반등장 / 1계약 Long 진입 허용)  else if Data2(c) < Data2(ema(c, 50)) and d_osc > d_osc[1] and Data2(c) < Data2(ema(c, 200)) then { r = 2; entry_amt = 1; }

if r = 2 then          # 일봉 Regime 2가 선언될 때만 60분봉 진입 로직 실행  # V-자형 Trigger (공격형/투매 반전)  d_res_h = Data2(Highest(H, lookback_d)); #일봉상 7봉전 이내중 atr*1.5보다 긴 음봉중 가장 긴 장대음봉의 고점-을 표현하는 함수로 수정좀 해주세요 d_bb_down = Data2(BollBandDown(20, 2));  if atr(20) > average(atr(20), 60) *atr_vtrig then { if c > d_res_h then { if Data2(c) > d_bb_down and barsSince(Data2(L) < d_bb_down, 3) <= 3 then  { v_sig = true; }  if macd(10, 20, 6, 1) > 0 then  { w_sig = true; } (60분봉상)        

 if v_sig or w_sig then { buy("r2long", entry_amt); } }   # 최종 매수 실행

시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2025-12-03 13:41:42

안녕하세요 예스스탁입니다. 올리신 내용 수정해 드리기 어렵습니다. 수식은올리지 마시고 구현하자 하는 내용을 글로 정리해 올리시기 바랍니다. 즐거운 하루되세요