커뮤니티

51816 시스템 함수변환요청(키움) 재질문

프로필 이미지
통큰베팅
2017-02-09 11:27:38
155
글번호 106690
답변완료
안녕하세요? 글번호 51816번 재질문드립니다. YT언어로 함수변환 요청드립니다. 감사합니다. Vars : TickValue( 0 ), RSI_value( 0 ), RSI_period( 14 ), MACD_OSC_value( 0 ), MACD_period1( 12 ), MACD_period2( 26 ), MACD_signal_period( 9 ), H_value1( 0 ), H_bar1( 0 ), L_value1( 0 ), L_bar1( 0 ), H_value2( 0 ), H_bar2( 0 ), L_value2( 0 ), L_bar2( 0 ), ShortPeriod( 9 ), // 전환선 기간 LongPeriod( 26 ); // 기준선 기간 // 호가단위 TickValue = OneTick * PriceScale; // RSI RSI_value = RSI(C, RSI_period); // MACD 오실레이터 v0 = MACD(C, MACD_period1, MACD_period2); // MACD value v1 = Ema(v0, MACD_signal_period); // MACD 시그널 MACD_Osc_value = v0 - v1; // MACD 오실레이터 // 전환선 & 기준선 HighestLowest 주어진 기간동안의 극단적인 최고가, 최저가를 반환 highestlowest(H, L, ShortPeriod, H_value1, H_bar1, L_value1, L_bar1); highestlowest(H, L, LongPeriod, H_value2, H_bar2, L_value2, L_bar2); Value1 = (H_value1 + L_value1)/2; // 전환선 9개의 봉 동안 최고가 와 최저가의 중간값 Value2 = (H_value2 + L_value2)/2; // 기준선 26개의 봉 동안 최고가 와 최저가의 중간값 // 매수 진입 If Value1 > Value2 //전환선이 기준선보다 크고 And MACD_Osc_value > 0 //오실레이터 값이 0보다 크고 And CrossUp(RSI_value, 70) //RSI가 70을 상향 돌파 Then Buy("매수"); // 매도 진입 If Value1 < Value2 //전환선이 기준선보다 작고 And MACD_Osc_value < 0 //오실레이터 값이 0보다 작고 And CrossDown(RSI_value, 30) //RSI가 30을 하향 이탈 Then Sell("매도"); // 이하 청산 : 1계약당 손익이 10틱보다 크고 If ContractProfit > TickValue * 10 Then Begin // 매수 청산 : RSI가 70을 하향 이탈 If CrossDown(RSI_value, 70) then ExitLong("매수청산"); // 매도 청산 : RSI가 30을 상향 돌파 If CrossUp(RSI_value, 30) Then ExitShort("매도청산"); End; // 손절 10틱 SetStopLoss(TickValue * 10);
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2017-02-10 15:14:18

안녕하세요 예스스탁입니다. // 전환선 & 기준선 HighestLowest 주어진 기간동안의 극단적인 최고가, 최저가를 반환 highestlowest(H, L, ShortPeriod, H_value1, H_bar1, L_value1, L_bar1); highestlowest(H, L, LongPeriod, H_value2, H_bar2, L_value2, L_bar2); 수식에서 어떤 내용인지 잘 모르는 함수가 있습니다. 해당식은 사용자분이 직접 변경하시기 바랍니다. 즐거운 하루되세요 > 통큰베팅 님이 쓴 글입니다. > 제목 : 51816 시스템 함수변환요청(키움) 재질문 > 안녕하세요? 글번호 51816번 재질문드립니다. YT언어로 함수변환 요청드립니다. 감사합니다. Vars : TickValue( 0 ), RSI_value( 0 ), RSI_period( 14 ), MACD_OSC_value( 0 ), MACD_period1( 12 ), MACD_period2( 26 ), MACD_signal_period( 9 ), H_value1( 0 ), H_bar1( 0 ), L_value1( 0 ), L_bar1( 0 ), H_value2( 0 ), H_bar2( 0 ), L_value2( 0 ), L_bar2( 0 ), ShortPeriod( 9 ), // 전환선 기간 LongPeriod( 26 ); // 기준선 기간 // 호가단위 TickValue = OneTick * PriceScale; // RSI RSI_value = RSI(C, RSI_period); // MACD 오실레이터 v0 = MACD(C, MACD_period1, MACD_period2); // MACD value v1 = Ema(v0, MACD_signal_period); // MACD 시그널 MACD_Osc_value = v0 - v1; // MACD 오실레이터 // 전환선 & 기준선 HighestLowest 주어진 기간동안의 극단적인 최고가, 최저가를 반환 highestlowest(H, L, ShortPeriod, H_value1, H_bar1, L_value1, L_bar1); highestlowest(H, L, LongPeriod, H_value2, H_bar2, L_value2, L_bar2); Value1 = (H_value1 + L_value1)/2; // 전환선 9개의 봉 동안 최고가 와 최저가의 중간값 Value2 = (H_value2 + L_value2)/2; // 기준선 26개의 봉 동안 최고가 와 최저가의 중간값 // 매수 진입 If Value1 > Value2 //전환선이 기준선보다 크고 And MACD_Osc_value > 0 //오실레이터 값이 0보다 크고 And CrossUp(RSI_value, 70) //RSI가 70을 상향 돌파 Then Buy("매수"); // 매도 진입 If Value1 < Value2 //전환선이 기준선보다 작고 And MACD_Osc_value < 0 //오실레이터 값이 0보다 작고 And CrossDown(RSI_value, 30) //RSI가 30을 하향 이탈 Then Sell("매도"); // 이하 청산 : 1계약당 손익이 10틱보다 크고 If ContractProfit > TickValue * 10 Then Begin // 매수 청산 : RSI가 70을 하향 이탈 If CrossDown(RSI_value, 70) then ExitLong("매수청산"); // 매도 청산 : RSI가 30을 상향 돌파 If CrossUp(RSI_value, 30) Then ExitShort("매도청산"); End; // 손절 10틱 SetStopLoss(TickValue * 10);