커뮤니티

함수요청

프로필 이미지
흰둥이아빠
2022-01-11 13:08:08
1063
글번호 155344
답변완료
아래 글번호 75464번 재질문입니다. 글번호 74425번에서 작성주신 지표의 고점(HV)과 저점(LV)은 아래와 같이 정의되었습니다. 따라서 HH와 LL값이 생성되었지만 HV 혹은 LV 값이 생성되지 않을 수 있습니다. [아래] - MACD오실레이터가 9시 3분 완성봉의 첫 히스토그램이 양의 값이면 그 값 포함부터 MACD오실레이터 값이 음으로 반전하고 다시 양의 값으로 재전환할 때까지를 포함하여 (MACD오실레이터 양의 값 포함->음->양으로 변환할 때포함) 주가의 고점(HV)과 저점(LV)을 잡습니다. - MACD오실레이터가 9시 3분 완성봉의 첫 히스토그램이 음의 값이면 그 값 포함부터 MACD오실레이터 값이 양으로 반전하고 다시 음으로 값으로 재전환할 때까지를 포함하여 (MACD오실레이터 음의 포함->양-> 음으로 변환할 때포함) 주가의 고점(HV)과 저점(LV)을 잡습니다. ==================================================================================== 기작성주신 아래 글번호 75023번의 지표와 74425번의 지표를 활용하여 국내선물 3분봉으로 일중거래를 하고자 합니다. - HH = HV이고 LL값이 나왔으나 LV값이 나오지 않은 상태라면 LL 이탈 완성시 익봉 시가에 3계약 매도 진입 -> 매수 진입 이후 LV값이 나오고 LV값을 하향 이탈 완성하면 익봉 시가에 1계약 매도청산 -> 60ma 상향 돌파 완성 익봉 시가에 1계약 매도청산 -> 15시 15분 나머지 포지션 전량 강제청산 (미결제약정 1계약~3계약) - LL = LV이고 HH값이 나왔으나 HV값이 나오지 않은 상태라면 HH 돌파 완성시 익봉 시가에 3계약 매수 진입 -> 매수 진입 이후 HV값이 나오고 HV값을 상향 돌파 완성하면 익봉 시가에 1계약 매수청산 -> 60ma 하향 이탈 완성 익봉 시가에 1계약 매수청산 -> 15시 15분 나머지 포지션 전량 강제청산 (미결제약정 1계약~3계약) : 하루 3계약을 1번 진입하며 당일 모두 청산하여 오버나이트 하지 않습니다. : 매도포지션으로 진입하고 LV값이 나오고 LV값을 하향 이탈 완성하면 익봉 시가에 1계약 매도청산하고자 하는데 LV값에서 횡보하여 이탈과 돌파를 반복하여 이탈할 때마다 포지션을 청산하는 것이 아니라 LV값 하향 이탈로는 1번만 1계약을 청산하고자 합니다. 60ma 상향 돌파시도 마찬가지 입니다. 1번만 1계약 청산하고자 합니다. 매수포지션으로 진입을 해도 같은 논리입니다. ----------------------------------------------------------------------------------- [지표 75023] Input : short(12), long(26), signal(9); Var : MACDv(0), MACDs(0),macdo(0),T(0),HH(0),LL(0); var : d1(0),t1(0),tl1(0),tl2(0); MACDv = MACD(short, long); MACDs = ema(MACDv,signal); macdo = MACDv-MACDs; if Bdate != Bdate[1] Then { d1 = sDate; t1 = sTime; HH = 0; LL = 0; Condition1 = False; } if d1 > 0 Then { if macdo > hh Then hh = macdo; if macdo < ll Then ll = macdo; if Condition1 == False and hh >= ll+0.5 Then { Condition1 = true; var1 = DayHigh; Var2 = DayLow; TL1 = TL_New(d1,t1,var1,NextBarSdate,NextBarStime,var1); TL2 = TL_New(d1,t1,var2,NextBarSdate,NextBarStime,var2); } if Condition1 == true Then { TL_SetEnd(TL1,sDate,sTime,var1); TL_SetEnd(TL2,sDate,sTime,var2); } } [지표 74425] Input : short(12), long(26), signal(9); Var : MACDv(0), MACDs(0),macdo(0),T(0),HV(0),LV(0); var : d1(0),t1(0),tl1(0),tl2(0); MACDv = MACD(short, long); MACDs = ema(MACDv,signal); macdo = MACDv-MACDs; if Bdate != Bdate[1] Then { d1 = sDate; t1 = sTime; T = 0; if MACDO > 0 Then { T = 1; HV = H; LV = L; } if MACDO < 0 Then { T = -1; HV = H; LV = L; } } Else { if ABS(T) < 2 Then { if H > HV Then HV = H; if L < LV Then LV = L; } if T == 1 and CrossUp(MACDO,0) Then { T = 2; var1 = HV; Var2 = LV; TL1 = TL_New(d1,t1,var1,sDate,sTime,var1); TL2 = TL_New(d1,t1,var2,sDate,sTime,var2); } if T == -1 and CrossDown(MACDO,0) Then { T = -2; var1 = HV; Var2 = LV; TL1 = TL_New(d1,t1,var1,sDate,sTime,var1); TL2 = TL_New(d1,t1,var2,sDate,sTime,var2); } if T == 2 or T == -2 Then { TL_SetEnd(TL1,sDate,sTime,var1); TL_SetEnd(TL2,sDate,sTime,var2); } }
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-01-11 14:27:13

> 흰둥이아빠 님이 쓴 글입니다. > 제목 : 함수요청 > 아래 글번호 75464번 재질문입니다. 글번호 74425번에서 작성주신 지표의 고점(HV)과 저점(LV)은 아래와 같이 정의되었습니다. 따라서 HH와 LL값이 생성되었지만 HV 혹은 LV 값이 생성되지 않을 수 있습니다. [아래] - MACD오실레이터가 9시 3분 완성봉의 첫 히스토그램이 양의 값이면 그 값 포함부터 MACD오실레이터 값이 음으로 반전하고 다시 양의 값으로 재전환할 때까지를 포함하여 (MACD오실레이터 양의 값 포함->음->양으로 변환할 때포함) 주가의 고점(HV)과 저점(LV)을 잡습니다. - MACD오실레이터가 9시 3분 완성봉의 첫 히스토그램이 음의 값이면 그 값 포함부터 MACD오실레이터 값이 양으로 반전하고 다시 음으로 값으로 재전환할 때까지를 포함하여 (MACD오실레이터 음의 포함->양-> 음으로 변환할 때포함) 주가의 고점(HV)과 저점(LV)을 잡습니다. ==================================================================================== 기작성주신 아래 글번호 75023번의 지표와 74425번의 지표를 활용하여 국내선물 3분봉으로 일중거래를 하고자 합니다. - HH = HV이고 LL값이 나왔으나 LV값이 나오지 않은 상태라면 LL 이탈 완성시 익봉 시가에 3계약 매도 진입 -> 매수 진입 이후 LV값이 나오고 LV값을 하향 이탈 완성하면 익봉 시가에 1계약 매도청산 -> 60ma 상향 돌파 완성 익봉 시가에 1계약 매도청산 -> 15시 15분 나머지 포지션 전량 강제청산 (미결제약정 1계약~3계약) - LL = LV이고 HH값이 나왔으나 HV값이 나오지 않은 상태라면 HH 돌파 완성시 익봉 시가에 3계약 매수 진입 -> 매수 진입 이후 HV값이 나오고 HV값을 상향 돌파 완성하면 익봉 시가에 1계약 매수청산 -> 60ma 하향 이탈 완성 익봉 시가에 1계약 매수청산 -> 15시 15분 나머지 포지션 전량 강제청산 (미결제약정 1계약~3계약) : 하루 3계약을 1번 진입하며 당일 모두 청산하여 오버나이트 하지 않습니다. : 매도포지션으로 진입하고 LV값이 나오고 LV값을 하향 이탈 완성하면 익봉 시가에 1계약 매도청산하고자 하는데 LV값에서 횡보하여 이탈과 돌파를 반복하여 이탈할 때마다 포지션을 청산하는 것이 아니라 LV값 하향 이탈로는 1번만 1계약을 청산하고자 합니다. 60ma 상향 돌파시도 마찬가지 입니다. 1번만 1계약 청산하고자 합니다. 매수포지션으로 진입을 해도 같은 논리입니다. ----------------------------------------------------------------------------------- [지표 75023] Input : short(12), long(26), signal(9); Var : MACDv(0), MACDs(0),macdo(0),T(0),HH(0),LL(0); var : d1(0),t1(0),tl1(0),tl2(0); MACDv = MACD(short, long); MACDs = ema(MACDv,signal); macdo = MACDv-MACDs; if Bdate != Bdate[1] Then { d1 = sDate; t1 = sTime; HH = 0; LL = 0; Condition1 = False; } if d1 > 0 Then { if macdo > hh Then hh = macdo; if macdo < ll Then ll = macdo; if Condition1 == False and hh >= ll+0.5 Then { Condition1 = true; var1 = DayHigh; Var2 = DayLow; TL1 = TL_New(d1,t1,var1,NextBarSdate,NextBarStime,var1); TL2 = TL_New(d1,t1,var2,NextBarSdate,NextBarStime,var2); } if Condition1 == true Then { TL_SetEnd(TL1,sDate,sTime,var1); TL_SetEnd(TL2,sDate,sTime,var2); } } [지표 74425] Input : short(12), long(26), signal(9); Var : MACDv(0), MACDs(0),macdo(0),T(0),HV(0),LV(0); var : d1(0),t1(0),tl1(0),tl2(0); MACDv = MACD(short, long); MACDs = ema(MACDv,signal); macdo = MACDv-MACDs; if Bdate != Bdate[1] Then { d1 = sDate; t1 = sTime; T = 0; if MACDO > 0 Then { T = 1; HV = H; LV = L; } if MACDO < 0 Then { T = -1; HV = H; LV = L; } } Else { if ABS(T) < 2 Then { if H > HV Then HV = H; if L < LV Then LV = L; } if T == 1 and CrossUp(MACDO,0) Then { T = 2; var1 = HV; Var2 = LV; TL1 = TL_New(d1,t1,var1,sDate,sTime,var1); TL2 = TL_New(d1,t1,var2,sDate,sTime,var2); } if T == -1 and CrossDown(MACDO,0) Then { T = -2; var1 = HV; Var2 = LV; TL1 = TL_New(d1,t1,var1,sDate,sTime,var1); TL2 = TL_New(d1,t1,var2,sDate,sTime,var2); } if T == 2 or T == -2 Then { TL_SetEnd(TL1,sDate,sTime,var1); TL_SetEnd(TL2,sDate,sTime,var2); } }