커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

문의드립니다

input : tenkan_len(9),tenkan_mult(2),kijun_len(26),kijun_mult(4),spanB_len(52),spanB_mult(6),offset(26); Input : 당일수익틱수(100),당일손실틱수(200); Var : N1(0),dayPl(0),당일수익(0),당일손실(0); var : Xcond(false); var : ATR1(0),up1(0),dn1(0),upper1(0),lower1(0),os1(0),spt1(0),max1(0),min1(0),tenkan(0); var : ATR2(0),up2(0),dn2(0),upper2(0),lower2(0),os2(0),spt2(0),max2(0),min2(0),kijun(0); var : senkouA(0); var : ATR3(0),up3(0),dn3(0),upper3(0),lower3(0),os3(0),spt3(0),max3(0),min3(0),senkouB(0); var : tenkan_css(0),kijun_css(0),cloud_a(0),cloud_b(0),chikou_css(0),tx(0); ATR1 = ATR(tenkan_len)*tenkan_mult; up1 = (h+L)/2 + ATR1; dn1 = (h+L)/2 - ATR1; upper1 = iff(C[1] < upper1[1],min(up1,upper1[1]),up1); lower1 = iff(C[1] > lower1[1],max(dn1,lower1[1]),dn1); os1 = iff(c > upper1 , 1 ,IFf(c < lower1, 0 , os1[1])); spt1 = iff(os1 == 1 , lower1 , upper1); max1 = iff(CrossUp(c,spt1) or CrossDown(c,spt1) , max(c,max1[1]) , IFf(os1 == 1 , max(c,max1[1]) , spt1)); min1 = iff(CrossUp(c,spt1) or CrossDown(c,spt1) , min(c,min1[1]) , iff(os1 == 0 , min(c,min1[1]) , spt1)); tenkan = avg(max1,min1); ATR2 = ATR(kijun_len)*kijun_mult; up2 = (h+L)/2 + ATR2; dn2 = (h+L)/2 - ATR2; upper2 = iff(C[1] < upper2[1],min(up2,upper2[1]),up2); lower2 = iff(C[1] > lower2[1],max(dn2,lower2[1]),dn2); os2 = iff(c > upper2 , 1 ,IFf(c < lower2, 0 , os2[1])); spt2 = iff(os2 == 1 , lower2 , upper2); max2 = iff(CrossUp(c,spt2) or CrossDown(c,spt2) , max(c,max2[1]) , IFf(os2 == 1 , max(c,max2[1]) , spt2)); min2 = iff(CrossUp(c,spt2) or CrossDown(c,spt2) , min(c,min2[1]) , iff(os2 == 0 , min(c,min2[1]) , spt2)); kijun = avg(max2,min2); senkouA = avg(kijun,tenkan); ATR3 = ATR(spanB_len)*spanB_mult; up3 = (h+L)/2 + ATR3; dn3 = (h+L)/2 - ATR3; upper3 = iff(C[1] < upper3[1],min(up3,upper3[1]),up3); lower3 = iff(C[1] > lower3[1],max(dn3,lower3[1]),dn3); os3 = iff(c > upper3 , 1 ,IFf(c < lower3, 0 , os3[1])); spt3 = iff(os3 == 1 , lower3 , upper3); max3 = iff(CrossUp(c,spt3) or CrossDown(c,spt3) , max(c,max3[1]) , IFf(os3 == 1 , max(c,max3[1]) , spt3)); min3 = iff(CrossUp(c,spt3) or CrossDown(c,spt3) , min(c,min3[1]) , iff(os3 == 0 , min(c,min3[1]) , spt3)); senkouB = avg(max3,min3); tenkan_css = Red; kijun_css = Blue; cloud_a = teal; cloud_b = red; chikou_css = Green; 당일수익 = PriceScale*당일수익틱수; 당일손실 = PriceScale*당일손실틱수; if Bdate != Bdate[1] Then { Xcond = false; N1 = NetProfit; } daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] then { if daypl >= 당일수익 or daypl <= -당일손실 Then Xcond = true; if (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; } if Xcond == false Then { if CrossUp(tenkan,kijun) Then { Buy(); } if CrossDown(tenkan,kijun) Then { sell(); } } if MarketPosition == 1 then { ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일손실+daypl)/CurrentContracts)); } 수고 많으십니다 전에 만들어 주신 수식인데 하루 100틱 수익이나 손실이면 매매 종료하는 수식입니다 문의드릴 내용은 여기에 한 가지 더 추가 부탁드립니다 1계약으로 100틱 수익이 먼저 나다면 매매 종료하고 만약 손실이 먼저 난다면 매매 종료하지 않고 2계약으로 다음 신호부터 진입하여 200틱 손실이나 300틱 익절하면 매매종료 이런 수식을 부탁드립니다 계약수와 손익절 틱수는 최적화 가능하게 변수로 빼주십시요 감사합니다
프로필 이미지
cjfdk
2024-09-08
720
글번호 183266
시스템
답변완료

TL_New 함수 사용 문의입니다.

추세선 그리는데 NDX 종목에서 다음같이 해도 추세선도 안그려지고 값을 못가저오네요. 기본 사용법 오류인거 같은데 검토 부탁드립니다. 종목은 NDX 나스닥 100입니다. var: TL_sDate(20240701), TL_sTime(150000), TL_sValue(18069), TL_eDate(20240901), TL_eTime(150000), TL_eValue(18069); var: TL(0), TL_BeginDate(0), TL_BeginVal(0); TL = TL_New(TL_sDate, TL_sTime, TL_sValue, TL_eDate, TL_eTime, TL_eValue); TL_BeginDate = TL_GetBeginDate(TL); MessageLog("TL_BeginVal = %f", TL_BeginVal); MessageLog("TL_BeginVal = %d", TL_BeginVal); //---> TL_BeginVal 이 18069일거같은데 값이 위와 같이 나오는게 할당이 안된거 같습니다. 기초적인 사용법에서 잘못한거같은데 계속 해매고있네요 ^^;;
프로필 이미지
typeb
2024-09-08
648
글번호 183265
지표
답변완료

문의

1. 아래 키움식을 예스 수식으로 변환해보고 싶습니다 거의 다 되는데 몇가지 부분에서 막혀서요 m5= ma(c,5); m10= ma(c,10); m10상승률= m10/m10(1)*1000-1000 조건= m5>m10 &&m10상승률>=기준상승률; cnt= countsince(조건&& !조건(1), m10상승률>=기준상승률); bs = barsSince(조건&& !조건(1))+1; (cnt == bs && bs> 연속봉수) [기준상승률과 연속봉수는 외부변수] 2. hh = highestsince(1, date!=date(1), h); LL = lowestSince(1, date != date(1), L); fixed_H = VALUEWHEN(1, LL<LL(1), HH); L_first = if(date!=date(1), L, 0); lv= if(daylow()== l_first, H, fixed_h); 매수가격 = valuewhen(1,daylow()==L_first or LL< LL(1), LV);
프로필 이미지
gunman
2024-09-08
778
글번호 183264
지표
답변완료

당일 분봉 누적음봉캔들 갯수

당일 분봉 누적음봉캔들 갯수 수식 부탁합니다
프로필 이미지
팔보채
2024-09-08
647
글번호 183263
지표
답변완료

첫번째 봉에서 Atstop 매도

안녕하세요~ 다음은 시가 기준 매매 테스트를 위해서 60분봉 차트에서 시가대비 0.5% 상승시 매수, 매수 다음 날부터 시가대비 0.5% 하락시 매도하는 시스템입니다. if MarketPosition == 0 Then Buy("BB",AtStop,DayOpen*1.005); if MarketPosition == 1 && Bdate > EntryDate Then ExitLong("EX",Atstop,DayOpen*0.995); 매도에서 첫번째 봉 다음에 적용되거나, 시가에 바로 매도 되는 경우가 있어서, 매수 다음날 Atstop방식의 매도가 정확하게 적용되게 수정 부탁드립니다. 항상 감사합니다~
프로필 이미지
일목초인
2024-09-08
702
글번호 183262
시스템
답변완료

키움수식 종목검색

period (110) signal (30) 가=(HuLL(C, period) - HuLL(C(1), period)) / HuLL(C(1), period) * 100; 나=(Hu, signal); CROSSUP(가,나)
프로필 이미지
박셰프
2024-09-08
850
글번호 183261
종목검색
답변완료

부틱드립니다

수고하십니 아래 키움수식을 예스수식로 부탁드립니다 수식1 A1 =MA(C,5,이평종류); A2 =MA(C,20,이평종류); A3 =MA(C,40,이평종류); B1 = A3>A1 && A1>A2; 조건 = valuewhen(1,B1, o); 조건 && ! 조건(1) 수식2 A1 =MA(C,5,이평종류); A2 =MA(C,20,이평종류); A3 =MA(C,40,이평종류); B2 = A1>A3 && A3>A2; 조건 = valuewhen(1,B2, o); 조건 && ! 조건(1) 수식3 A1 =MA(C,5,이평종류); A2 =MA(C,20,이평종류); A3 =MA(C,40,이평종류); B3 = A1>A2 && A2>A3; 조건 = valuewhen(1,B3, o); 조건 && ! 조건(1)
프로필 이미지
파생돌이
2024-09-08
685
글번호 183259
지표
답변완료

예스종목검색 및 시스템 매매 2가지 변환요청드립니다...

항상 감사드립니다...^^* 첨부파일은 영웅문에서 작성한 검색식 입니다.. 예스종목 검색 및 시스템 매매적용 확용할려고 합니다... 부탁드립니다..
프로필 이미지
서민순
2024-09-08
756
글번호 183258
종목검색
답변완료

수식전환

수고많으십니다 아래수식을 예스로 변환시켜 보았으나 연산자 앞뒤 두데이타의 형태가 같아야 한다면서 안되네요 ㅠ클리닉 좀 부탁드립니다^^ AA=DAYCLOSE[1]*가격1<=DAYHIGH() AND DAYLOW()*가격2<=DAYHIGH() AND DAYOPEN()*가격3<=DAYCLOSE(); A=(DAYHIGH()+DAYLOW())*0.5; Valuewhen(1,AA,A); B=DAYLOW()+((DAYHIGH()-DAYLOW())*0.382); Valuewhen(1,AA,B); BB=DAYLOW()+((DAYHIGH()-DAYLOW())*0.618); Valuewhen(1,AA,BB); 위를 변환시킨식은 아래와 같습니다 뭣이가 잘못인지요? VAR:AA(0),A(0),B(0),BB(0),가격1(1.12),가격2(1.12),가격3(1.07); AA=DAYCLOSE[1]*가격1<=DAYHIGH() AND DAYLOW()*가격2<=DAYHIGH() AND DAYOPEN()*가격3<=DAYCLOSE(); A=(DAYHIGH()+DAYLOW())*0.5; B=DAYLOW()+((DAYHIGH()-DAYLOW())*0.382); BB=DAYLOW()+((DAYHIGH()-DAYLOW())*0.618); IF DAYCLOSE[1]*가격1<=DAYHIGH() AND DAYLOW()*가격2<=DAYHIGH() AND DAYOPEN()*가격3<=DAYCLOSE() TheN VAR1=A; IF DAYCLOSE[1]*가격1<=DAYHIGH() AND DAYLOW()*가격2<=DAYHIGH() AND DAYOPEN()*가격3<=DAYCLOSE() TheN Var2=B; IF DAYCLOSE[1]*가격1<=DAYHIGH() AND DAYLOW()*가격2<=DAYHIGH() AND DAYOPEN()*가격3<=DAYCLOSE() TheN Var3=BB; Plot1(VAR1); PLOT2(Var2); PLOT3(Var3);
프로필 이미지
트라이
2024-09-08
756
글번호 183257
지표
답변완료

종가가격 수치 부탁드립니다..

15분봉 또는 30분봉에서 사용하고 싶은데요... var1 = 1시간봉 종가가격; var2 = 4시간봉 종가가격; var10 = 1시간봉 시가가격; var11 = 4시간봉 시가가격;
프로필 이미지
신나는파파
2024-09-08
873
글번호 183256
지표