커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

질문입니다.

다음과 같은 지표를 만들었습니다. Input : P1(10), P2(20); Var1 = Ma(C, P1); Var2 = Ma(C, P2); Variable : maTestc1(0); If C == Var1 Then maTestc1 = 0; If C > Var1 Then maTestc1 = 1; If C < Var1 Then maTestc1 = -1; Variable : maTestc2(0); If C == Var2 Then maTestc2 = 0; If C > Var2 Then maTestc2 = 1; If C < Var2 Then maTestc2 = -1; Variable : maTest12(0); If Var1 == Var2 Then maTest12 = 0; If Var1 > Var2 Then maTest12 = 1; If Var1 < Var2 Then maTest12 = -1; Variable : maTestTotal(0); maTestTotal = maTestc1 + maTestc2 + maTest12; Plot1(maTestTotal, "y3maTest", BLACK); 여기서 질문입니다. 위 지표에서 변곡점을 이용해 시스템을 작성하고자 하는데, 로직은 이러합니다. 로직1. maTestTotal값이 +2 이상에서 고점을 형성하고 하락하면, 매도 매도 후 maTestTotal값이 -1 이상값에서 저점을 형성하고 상승하면, 매도청산 maTestTotal값이 -2 이하에서 저점을 형성하고 상승하면, 매수 매수 후 maTestTotal값이 +1 이하값에서 고점을 형성하고 하락하면, 매수청산 로직2. maTestTotal값이 +3에 진입하면, 매도 매도 후 maTestTotal값이 -1 이상값에서 저점을 형성하고 상승하면, 매도청산 maTestTotal값이 -3에 진입하면, 매수 매수 후 maTestTotal값이 +1 이하값에서 고점을 형성하고 하락하면, 매수청산 그리고 추가질문은 위 지표의 변곡점들을 지표에 표시하는 방법을 알고 싶습니다. 꼭 위 지표를 이용해 작성하고자 합니다. 부탁드립니다. 감사합니다.
프로필 이미지
yanartas
2016-12-05
97
글번호 104653
시스템
답변완료

문의합니다

분봉,틱봉차트에 일봉차트의 5일선,20일선을 표시할 수 있나요? 가능하면 수식부탁합니다 수고하세요
프로필 이미지
회원
2016-12-05
99
글번호 104648
지표
답변완료

문의

첫째, 당일 피봇의 2차지지와저항을 고점저점을 잡고 0.618과 0.382의자리라인선과 종가선라인을 부탁드립니다. 둘째.아랫식 당일의 23.6%때마다 파동이 전환되서 고점저점을 잡아주는데요 input : Per1(23.6),Per2(38.2),Per3(50.0),Per4(61.8),Per5(76.4); var : HH(0),LL(0),T(0); if bdate != Bdate[1] Then{ T = 0; HH = L; LL = L; } if bdate == Bdate[1] Then{ if dayhigh > dayhigh[1] Then T = 1; if dayhigh < dayhigh[1] Then T = -1; } if T == 1 and CrossDown(C,var5) Then LL = L; if T == -1 and CrossUp(C,var1) Then HH = H; if H > HH Then HH = H; if L < LL Then LL = L; var1 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100)); var2 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100)); var3 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100)); var4 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100)); var5 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100)); plot1(HH,"H"); plot2(var1,"23.6"); plot3(var2,"38.2"); plot4(var3,"50.0"); plot5(var4,"61.8"); plot6(var5,"76.4"); plot7(LL,"L"); 해당주와 해당월도 같은개념으로 적용변경된 수식 부탁드립니다. 1.해당주 input : Per1(50.0),Per2(55.0),Per3(65.0),Per4(120.0),Per5(130.0),Per6(135.0),Per7(265.0),Per8(275.0),Per9(280.0); var : WH(0),WL(0),WH1(0),WL1(0),HH(0),LL(0),Didx(0); if DayOfWeek(bdate) < DayOfWeek(bdate[1]) and bdate != bdate[1] Then{ WH = H; WL = L; WH1 = WH[1]; WL1 = WL[1]; Didx = 0; } if bdate != bdate[1] Then Didx = Didx+1; if H > WH Then WH = H; if L < WL Then WL = L; if Didx == 1 and WH1 > 0 and WL1 > 0 then { HH = max(WH,WH1); LL = min(WL,WL1); } Else{ HH = WH; LL = WL; } var1 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per1/100)); var2 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per2/100)); var3 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per3/100)); var4 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per4/100)); var5 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per5/100)); var6 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per6/100)); var7 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per7/100)); var8 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per8/100)); var9 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per9/100)); var11 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100)); var12 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100)); var13 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100)); var14 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100)); var15 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100)); var16 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per6/100)); var17 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per7/100)); var18 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per8/100)); var19 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per9/100)); plot1(var1); plot2(var2); plot3(var3); plot4(var4); plot5(var5); plot6(var6); plot7(var7); plot8(var8); plot9(var9); plot10(var12); plot11(var13); plot12(var14); plot13(var15); plot14(var16); plot15(var17); plot16(var18); plot17(var19); 2. 해당월 input : Per1(50.0),Per2(55.0),Per3(65.0),Per4(120.0),Per5(130.0),Per6(135.0),Per7(265.0),Per8(275.0),Per9(280.0); var : MH(0),ML(0),MH1(0),ML1(0),HH(0),LL(0),Didx(0); if bdate > bdate[1]+30 and bdate != bdate[1] Then{ MH = H; ML = L; MH1 = MH[1]; ML1 = ML[1]; Didx = 0; } if DayOfWeek(bdate) < DayOfWeek(bdate[1]) Then Didx = Didx+1; if H > MH Then MH = H; if L < ML Then ML = L; if Didx == 0 and MH1 > 0 and ML1 > 0 then { HH = max(MH,MH1); LL = min(ML,ML1); } Else{ HH = MH; LL = ML; } var1 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per1/100)); var2 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per2/100)); var3 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per3/100)); var4 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per4/100)); var5 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per5/100)); var6 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per6/100)); var7 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per7/100)); var8 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per8/100)); var9 = 10^(LOG10(LL)+(LOG10(HH)-LOG10(LL))*(Per9/100)); var11 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per1/100)); var12 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per2/100)); var13 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per3/100)); var14 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per4/100)); var15 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per5/100)); var16 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per6/100)); var17 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per7/100)); var18 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per8/100)); var19 = 10^(LOG10(HH)-(LOG10(HH)-LOG10(LL))*(Per9/100)); plot1(var1); plot2(var2); plot3(var3); plot4(var4); plot5(var5); plot6(var6); plot7(var7); plot8(var8); plot9(var9); plot10(var12); plot11(var13); plot12(var14); plot13(var15); plot14(var16); plot15(var17); plot16(var18); plot17(var19);
프로필 이미지
렉쳐
2016-12-05
124
글번호 104642
지표
답변완료

안녕하세요 시스템 작성중 문의드립니다.

STAD 전략집을 따라서 코딩하고 있습니다. 기본 전략은 1차진입: 볼린저 밴드 하단 연속 2회 돌파시 다음봉 시가 매수진입 2차진입: 매수포지션 상태에서 볼린저밴드 하단에 리미트 주문진입 입니다. 1차진입 로직은 잘 구현이 된 것 같습니다. 그런데 2차 진입로직에서 사진에서 보다시피 2차매수진입 포인트가 현재봉기준의 볼린저밴드 하단이 아니고 이전 봉 기준의 볼린저 밴드에서 진입이 되었습니다. 그 이유를 알고싶습니다. 로직대로 매수포지션 상태에서 볼린저 하단을 하향돌파하면 추가 진입하려면 어떻게 해야할까요? 감사합니다.
프로필 이미지
ktemu10k
2016-12-05
147
글번호 104633
시스템
답변완료

수식 부탁합니다.

안녕하세요? 수식좀 부탁드립니다. *. 매수조건 1. 60MA 기울기가 상승이고. 2. 20MA 기울기가 상승일때. 3. 현재가는 60MA 가격보다 위에 있어야함.(60MA<현재가) 4. 현재봉이 5MA 위에 있을때 시가+2틱에서 매수. *. 매도조건 1. 60MA 기울기가 하락이고. 2. 20MA 기울기가 하락일때. 3. 현재가는 60MA 가격보다 아래에 있어야함.(60MA>현재가) 4. 현재봉이 5MA 아래에 있을때 시가-2틱에서 매도.
프로필 이미지
상중하
2016-12-05
104
글번호 104632
시스템
답변완료

50850 관련 재문의 드립니다.

안녕하세요...관리자님... 말씀하신 바대로, 200봉으로 지정했는데도, 예상되는 결과가 나오질 않습니다... 수식을 적용했는데, 월봉 RSI Signal이 상승하는 종목만 검색되어야 하는데, 하락하는 종목이 검색되기도 하구요... 해서, 이상해서, 검색을 일봉, 주봉, 월봉을 클릭하여 각각 검색을 해봤는데, 결과는 이상하게도, 같은 종목들이 검색됩니다. 일봉, 주봉, 월봉의 RSI Signal과 각 봉의 5개봉 이동평균선이 다 틀릴텐데, 같은 종목이 검색되는것이 이상합니다. 제가 처음이라서 그런지 뭘 잘 못하고 있는 것인지 모르겠습니다. 바쁘시더라도, 함 잘 살펴봐 주시면 감사하겠습니다. 감사합니다. (P.S) 현재봉 포함 5개봉의 RSI signal이 상승하는 것과, 5개봉 이동평균선이 하락하는 종목을 찾고 싶은 것입니다.
프로필 이미지
와이즈
2016-12-05
110
글번호 104630
종목검색
답변완료

input 변수 관련 문의 드립니다.

input변수의 변화에 따라 buycon 성립조건을 따로 설정하려 하려 아래와 같이 수식을 작성해 보았습니다. op1, op2 값을 설정하는 방법이 잘못되었는지 진입자체가 되질 안네요. 수정 부탁 드립니다. 예) input : op1(10), op2(20); var : cma1(0), cma2(0); cma1 = ma(c,op1); cma2 = ma(c,op2); var : buycon(false); if op1==1 and op2==10 then { if 조건문 then buycon = true; } else if op1==2 and op2==10 then { if 조건문 then buycon = true; } else if op1==2 and op2==20 then { if 조건문 then buycon = true; } else buycon = false; if buycon==true and 조건식 then buy("buy1");
프로필 이미지
다올
2016-12-05
104
글번호 104618
시스템
답변완료

수식수정좀 부탁드립니다.

다음과 같은 수식을 구했습니다. 근데 실행이 안되네요... 수정좀 부탁드립니다. inputs: MonthOfTrend( 12 ), DayOfTrend( 19 ), YearOfTrend( 2003 ), ChannelPeriods( 34 ), OverBoughtRegion( 75 ), BearishPeriods( 21 ), MultiplicationFactor( 3.2 ), InitialStop( 10 ) ; variables: KeyDate( 0 ), CountHoldingDays( false ), HoldingDays( 0 ), Index( 0 ), OB( 0 ), Bullish( 0 ), Bearish( 0 ), RangeA( 0 ), StopLevel( 0 ), BearStop( 0 ) ; if CurrentBar = 1 then begin KeyDate = ELDate( MonthOfTrend, DayOfTrend, YearOfTrend ) ; end ; if Date >= KeyDate and Date[1] < KeyDate then CountHoldingDays = true ; if CountHoldingDays then HoldingDays = HoldingDays + 1 ; Index = RSI( Close, ChannelPeriods ) ; OB = Index - OverBoughtRegion ; Bullish = Close - ( Close * OB * 0.01 ) ; if HoldingDays > 0 then begin if BearishPeriods <> 0 then begin Bearish = Summation( AbsValue( Low - Low[1] ), BearishPeriods ) / BearishPeriods ; RangeA = Summation( Close - Low, BearishPeriods ) / BearishPeriods ; end ; StopLevel = Close - ( ( Bearish + RangeA ) * MultiplicationFactor ) ; if StopLevel > BearStop[1] and StopLevel > InitialStop then BearStop = StopLevel else if StopLevel > BearStop[1] and StopLevel < InitialStop then BearStop = InitialStop else if StopLevel <= BearStop[1] then BearStop = BearStop[1] else BearStop = StopLevel * HoldingDays ; Plot1( High, "High" ) ; Plot2( Low, "Low" ) ; Plot3( Open, "Open" ) ; Plot4( Close, "Close" ) ; Plot5( Bullish, "BullishLn" ) ; Plot6( BearStop, "BearStopLn" ) ; Plot7( Bullish, "BullishBK" ) ; Plot8( BearStop, "BearStopBK" ) ; end ; 좋은 하루되세요..
프로필 이미지
예그리나
2016-12-05
126
글번호 104608
지표
답변완료

지표식 문의합니다.

일목균형표에서 전환선을 9, 기준선을 26, 후행스팬을 26, 선행스팬1을 3, 선행스팬2를 45로 해서 지표식좀 작성해주세요.
프로필 이미지
천왕봉
2016-12-05
124
글번호 104607
지표