커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내

안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
프로필 이미지
예스스탁
2026-02-27
6548
글번호 230811
지표

초록이 님에 의해서 삭제되었습니다.

프로필 이미지
초록이
2015-08-18
1
글번호 89610
시스템
답변완료

시스템 문의..

현대중공업 30분, 이동평균 하고 있읍니다. 혹시, 아래와 같은 수식 가능합니까? 1) 직전봉 고가 (또는 종가) 대비 일정비율 손실나면 자동청산.. 연이은 두개의 봉에서, 앞봉 고가 대비 일정액 손실나면, 뒷봉에서 도중에 자동청산.(앞봉이 단기 상투(고점)인 경우 수익율 최대화) 2) 1)번 경우에, 꼭 직전봉이 아니라도, 단기(1일~5일) 고점 대비 일정비율 손실나면 청산. 해당봉 이전 적게는 1일, 많게는 5일정도 단기고점을 인식하여 그점 대비 일정손실율 도달하면 청산. 위 경우, 모두 다음 매매신호가 오기전에 미리 청산하여 수익율을 극대화하기 위한 조치입니다. 가능한가요?
프로필 이미지
초록이
2015-08-18
186
글번호 89607
시스템

초록이 님에 의해서 삭제되었습니다.

프로필 이미지
초록이
2015-08-18
1
글번호 89605
시스템
답변완료

조건검색식 부탁드립니다

스토캐스틱 이중바닥과 삼중바닥 검색식을 부탁드립니다 구체적인 조건은 1 현재봉 기준의 스토캐스틱 %d와 %k선의 상태는 아무런 상관이 없습니다 (골드크로스 상태이던 데드 크로스 상태이던)직전 골든크로스났던 저점이 직직전 골든크로스 났던 저점보다 높으면 됩니다 1-1 이중바닥이라고 하였지만 %D선기준 직전골든 크로스 보다 수치 3이하의 차이를 보이는 골든크로스는 무조건 이중바닥으로 인정합니다 예 직전저점 %D 수치 42이후 골든크로스 이후 이번저점 %D수치 40이후 골든크로스가 발생될시 이중바닥으로 인정 38.99부터는 불인정 2 휩쏘를 방지하기위해 %K와 %D 최대이격차가 3이하인 데드크로스후 골드크로 스는 다중바닥의 외바닥으로 인정하지 않음 이렇게 이중바닥용 검색식과 3중바닥용 검색식을 만들어주시면 감사하겠습니다 (__)
프로필 이미지
그리즐리
2015-08-18
226
글번호 89604
검색
답변완료

문의드립니다.

안녕하세요 43638 파라볼릭 시스템과 관련하여 문의드립니다 1.식에의도는 피라미딩진입으로 매수1로 진입한것은 매수청산조건에 서 매수청산1,또는 매수청산2, 또는 손절 로 청산하고, 매수2진입, 매수3진입 또한 동일방식으로 청산하고자 한것입니다. 2.손절식이 진입가+-10틱인데 확인부탁합니다 그리고 해외선물 에서 10틱이라는표현방법이 틱사이즈*10하면 되나요? ex) crude oil 41.80 일경우 0.1로표현 3.아래식은 상기식을 변수하나씩 분리하여 검증 하고자하니 식 자체에서 한번씩진입 과 청산이 이루어저야되는데 오류가납니다 감사합니다. ====================================================================== //파라가 크로스업시 1번 캔들 고점돌파하면 매수 그리고 익절은 +20틱(0.2) 손절은 -10틱(0.1) 그리고 파라전환(크로스다운)시 청산 크로스업시 진입과청산은 1회만발생 다음 크로스업까지 진입금지 익절에서 20틱을 목표가로설정하고 한틱이라도 밀리면 바로 청산하겠다는 의도임. (손익분기점(20틱)을 넘어같다가 밀리면 청산) 매도는 반대임.// //Crude oil적용 input : af1(0.01),max1(0.1); input : N(0.2),N1(0.01),loss(0.1); var : para1(0),T(0); para1 = sar(af1,max1); if stime >= 170000 or stime < 160000 Then{ if crossup(C,para1) Then{ var1 = H; T = 1; } if CrossDown(C,para1) Then{ var2 = L; T = -1; } if T == 1 Then buy("b1",AtStop,var1+PriceScale*0.01); if T == -1 Then sell("s1",AtStop,var2-PriceScale*0.01); if MarketPosition == 1 then{ T = 2; if highest(H,BarsSinceEntry) >= EntryPrice+PriceScale*N Then ExitLong("bx",AtStop,highest(h,BarsSinceEntry)-PriceScale*N1); ExitLong("bx2",AtStop,EntryPrice-PriceScale*loss); if CrossDown(C,para1) Then ExitLong("bx3"); } if MarketPosition == -1 then{ T = -2; if Lowest(L,BarsSinceEntry) <= EntryPrice-PriceScale*N Then ExitShort("sx1",AtStop,Lowest(L,BarsSinceEntry)+PriceScale*N1); ExitShort("sx2",AtStop,EntryPrice+PriceScale*loss); if CrossUp(C,para1) Then ExitShort("sx3"); } } if stime == 160000 or (stime > 160000 and stime[1] < 1600000) Then{ exitlong(); ExitShort(); }
프로필 이미지
베드로
2015-08-18
194
글번호 89603
시스템
답변완료

부탁 드립니다.

43618의 질문수식과 답변수식의 결과가 판이 하게 다르게 나와 질문 드리오니 정정 부탁 드립니다.
프로필 이미지
yes
2015-08-18
197
글번호 89602
지표
답변완료

시뮬레이션 차트에서

주식 개별 종목의 시뮬레이션 "30분봉 차트"가 "기준 차트"입니다. 30분봉 차트의 macd(10,20) 현재봉은 양이고 1봉전보다 크다. 30분봉 차트의 볼린져 밴드 (20,2) 상단 현재봉은 1봉전보다 작다 이때 일봉 차트의 ADX(20)현재봉은 5봉 내에 "3봉이 연속해서 30 이상인 봉"이 존재하며, 그리고 일봉차트의 10일선 현재봉은 3봉 연속으로 증가중이다. 이것을 어떻게 표현하면 좋을까요? 감사합니다.~
프로필 이미지
스테디어드밴서
2015-08-18
178
글번호 89598
시스템
답변완료

부탁드립니다.

아래 5번 수식에 1~4번을 같은 방식으로 추가하고 싶습니다. 그리고 이평라인을 맨 밑으로 부탁드립니다. 감사합니다. 1. 슬로우K가 하단선을 닫고 떨어질때 빨간색, 상단선을 닫고 떨어질때 파란색으로 부탁드립니다. Inputs: sto1(10),sto2(5), XAvgLen(9), HiLoLen(50), Retrace(0.382); Vars: HiHi(0),LoLo(0),Retracement(0),HRetrace(0),LRetrace(0); var : stok(0); stok = StochasticsK(sto1,sto2); HiHi = Highest(stok, HiLoLen); LoLo = Lowest(stok, HiLoLen); Retracement = (HiHi - LoLo) * Retrace; HRetrace = HiHi - Retracement; Lretrace = LoLo + Retracement; plot1(Hretrace-((HiHi-LoLo)*0.612),"저점상승"); plot2(Lretrace+((HiHi-LoLo)*0.612),"고점하락"); plot3(stok,"슬로우k"); 2. 아래지표에서 파란색라인을 시작할때 파란점이 빨간색 점이 시작될때 빨간점이 나타나도록 부탁드립니다. input : pt(0.2); if stime >= 070000 or stime < 033000 then{ if H >= O+0.2 and C > O Then plot1(O,"검색",RED); if L <= O-0.2 and C < O Then plot1(O,"검색",BLUE); } 3. 기본설정 RSI에서 과열구간이 끝나는 부분에서 파란색점이, 침체구간이 끝나는 부분에서 빨간색 점이 나타나도록 부탁드립니다. 4. 기본설정 파라볼릭에서 파란점이 뜨면 파란색점을, 빨간색점이 뜨면 빨간색 점을 부탁드립니다. --------------------------------------------------- 5. Input : BBP(20), MultiD(2); input : p(2); Input : CCIP(9); Input : WRPeriod(14); var : CCIv(0),WR(0),MAv(0),BBup(0),BBdn(0),BandB(0),T(0); MAv = ma(C,BBP); BBup = BollBandUp(BBP,MultiD); BBdn = BollBandDown(BBP,MultiD); BandB = ((C-BBdn)/(BBUp-BBdn))*100; CCIv = CCI(CCIP); WR = WILLR(WRPeriod); var1=ma(c,p); if var1 > var1[1] Then T = 1; Else T = -1; if crossup(H,BBup) Then plot1(1,"볼밴",BLUE); if CrossDown(L, BBdn) Then plot1(1,"볼밴",RED); if T == 1 and T[1] != 1 Then plot2(2,"이평",RED); if T == -1 and T[1] != -1 Then plot2(2,"이평",blue); if crossup(BandB,10) Then plot3(3,"Band%B",red); if CrossDown(BandB,90) Then plot3(3,"Band%B",BLUE); if crossup(CCIv,-100) Then plot4(4,"CCI",RED); if CrossDown(CCIv,100) Then plot4(4,"CCI",blue); if crossup(WR,-80) Then Plot5(5,"Williams'R",red); if CrossDown(WR,-20) Then Plot5(5,"Williams'R",BLUE);
프로필 이미지
매일상승
2015-08-18
199
글번호 89594
지표
답변완료

상하한가 30프로 변경관련해서...

안녕하세요. 전에 올려주신 상하한가 체크하는 문구가 최근에 30%상하한가로 변경되면서 수정되야할것같은데 제가 잘몰라서요... 어느부분을 고쳐야하는지... //하한가체크 if date >= 19981207 then { //거래소 98년 12월7일 가격제한폭 15%로 확대 변경됨 if date < 20050328 && CodeCategory() == 2 then //코스닥 2005년 3월28일 이전은 가격제한폭 12% DnLimit = (BP * 0.12); Else //코스닥 2005년 3월28일 이후 및 거래소98년12월 7일이후 15% DnLimit = (BP * 0.15); if CodeCategory() == 2 then { //코스닥 호가단위 ( 2003년 7월21일에 호가 단위 변경됨) if date >= 20030721 then { dn1 = int(DnLimit/100)*100; // 500,000원 이상의 하한가 호가 dn2 = int(DnLimit/100)*100; // 100,000원 이상 ~ 500,000원 미만의 하한가 호가 dn3 = int(DnLimit/100)*100; // 50,000원 이상 ~ 100,000원 미만의 하한가 호가 dn4 = int(DnLimit/50)*50; // 10,000원 이상 ~ 50,000원 미만의 하한가 호가 dn5 = int(DnLimit/10)*10; // 5,000원 이상 ~ 10,000원 미만의 하한가 호가 dn6 = int(DnLimit/5)*5; // 5,000원 미만의 하한가 호가 } else { // 코스닥 2003년7월21일 이전 dn1 = int(DnLimit/1000)*1000; dn2 = int(DnLimit/500)*500; dn3 = int(DnLimit/100)*100; dn4 = int(DnLimit/50)*50; dn5 = int(DnLimit/10)*10; dn6 = int(DnLimit/10)*10; } } Else { //거래소 호가단위 dn1 = int(DnLimit/1000)*1000; dn2 = int(DnLimit/500)*500; dn3 = int(DnLimit/100)*100; dn4 = int(DnLimit/50)*50; dn5 = int(DnLimit/10)*10; dn6 = int(DnLimit/5)*5; } if CodeCategory() == 1 or CodeCategory() == 2 then { //kospi, kosdaq If BP >= 500000 Then 하한가 = BP-dn1; Else If BP >= 100000 Then 하한가 = BP-dn2; Else If BP >= 50000 Then 하한가 = BP-dn3; Else If BP >= 10000 Then 하한가 = BP-dn4; Else If BP >= 5000 Then 하한가 = BP-dn5; Else 하한가 = BP-dn6; } else if CodeCategory() == 8 or CodeCategory() == 9 then { //ETF 하한가 = BP-dn6; } } //---------------------------------------- //상한가체크 if date >= 19981207 then { if date < 20050328 && CodeCategory() == 2 then UpLimit = (BP[0] * 1.12); Else UpLimit = (BP[0] * 1.15); if CodeCategory() == 2 then { if date >= 20030721 then { up1 = int(UpLimit/100+0.00001)*100; up2 = int(UpLimit/100+0.00001)*100; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/10+0.00001)*10; up7 = int(UpLimit/1+0.00001)*1; } } Else { up1 = int(UpLimit/1000+0.00001)*1000; up2 = int(UpLimit/500+0.00001)*500; up3 = int(UpLimit/100+0.00001)*100; up4 = int(UpLimit/50+0.00001)*50; up5 = int(UpLimit/10+0.00001)*10; up6 = int(UpLimit/5+0.00001)*5; up7 = int(UpLimit/1+0.00001)*1; } if CodeCategory() == 1 || CodeCategory() == 2 then { if sdate < 20101004 Then{ If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up6); } Else{ If BP >= 500000 Then 상한가 = up1; Else If BP >= 100000 Then 상한가 = iff(up2>=500000, up1, up2); Else If BP >= 50000 Then 상한가 = iff(up3>=100000, up2, up3); Else If BP >= 10000 Then 상한가 = iff(up4>=50000, up3, up4); Else If BP >= 5000 Then 상한가 = iff(up5>=10000, up4, up5); Else If BP >= 1000 Then 상한가 = iff(up5>=5000, up5, up6); Else 상한가 = iff(up6>=1000, up6, up7); } } else if CodeCategory() == 8 || CodeCategory() == 9 then { // ETF 상한가 = up6; } }
프로필 이미지
웨퐁
2015-08-18
175
글번호 89592
시스템