커뮤니티

문의드립니다

프로필 이미지
새벽에
2025-10-27 11:18:44
65
글번호 227339
답변완료

안녕하세요? 아래수식에 에러가있습니다 그리고신호가발생했으면 합니다 감사합니다
Inputs: TL11(0), TL21(0), CrossTolerance(10), ContractCount(1); Vars: valTL1_now(0), valTL2_now(0), valTL1_prev(0), valTL2_prev(0), diff(0), LastCrossBar(0), CrossLine(0); //--------------------------------------------- // 추세선 존재 시에만 작동 //--------------------------------------------- If (TL11 > 0) and (TL21 > 0) Then Begin // 현재 봉 값 valTL1_now = TL_GetValue(TL11, Date, Time); valTL2_now = TL_GetValue(TL21, Date, Time); // 이전 봉 값 valTL1_prev = TL_GetValue(TL11, Date[1], Time[1]); valTL2_prev = TL_GetValue(TL21, Date[1], Time[1]); diff = AbsValue(valTL1_now - valTL2_now); // 교차 근접 표시 If diff <= (PriceScale * CrossTolerance) Then Begin If LastCrossBar <> CurrentBar Then Begin CrossLine = TL_New(Date[1], Time[1], Close[1], Date, Time, Close); TL_SetColor(CrossLine, Yellow); TL_SetSize(CrossLine, 1); LastCrossBar = CurrentBar; End; End; // 교차 감지 → 1봉 뒤 자동매매 If (valTL1_prev < valTL2_prev) and (valTL1_now > valTL2_now) Then Buy ContractCount contracts next bar at market Else If (valTL1_prev > valTL2_prev) and (valTL1_now < valTL2_now) Then Sell ContractCount contracts next bar at market; End;

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

예스스탁 예스스탁 답변

2025-10-27 19:07:39

안녕하세요. 예스스탁입니다. 문법상 맞지 않는 부분만 수정해 드립니다. 신호발생이 되지 않으면 조건내용에 문제가 있는 부분이므로 해당 부분은 직접 수정해 보셔야 합니다. 올리신 수식만으로는 내용파악이 되지 않습니다. Inputs: TL11(0), TL21(0), CrossTolerance(10), ContractCount(1); Vars: valTL1_now(0), valTL2_now(0), valTL1_prev(0), valTL2_prev(0), diff(0), LastCrossBar(0), CrossLine(0); //--------------------------------------------- // 추세선 존재 시에만 작동 //--------------------------------------------- If (TL11 > 0) and (TL21 > 0) Then Begin // 현재 봉 값 valTL1_now = TL_GetValue(TL11, Date, Time); valTL2_now = TL_GetValue(TL21, Date, Time); // 이전 봉 값 valTL1_prev = TL_GetValue(TL11, Date[1], Time[1]); valTL2_prev = TL_GetValue(TL21, Date[1], Time[1]); diff = AbsValue(valTL1_now - valTL2_now); // 교차 근접 표시 If diff <= (PriceScale * CrossTolerance) Then Begin If LastCrossBar <> CurrentBar Then Begin CrossLine = TL_New(Date[1], Time[1], Close[1], Date, Time, Close); TL_SetColor(CrossLine, Yellow); TL_SetSize(CrossLine, 1); LastCrossBar = CurrentBar; End; End; // 교차 감지 → 1봉 뒤 자동매매 If (valTL1_prev < valTL2_prev) and (valTL1_now > valTL2_now) Then Buy("b",AtMarket,ContractCount); Else If (valTL1_prev > valTL2_prev) and (valTL1_now < valTL2_now) Then Sell("s",AtMarket,ContractCount); End; 즐거운 하루되세요