커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

새롬찬 님에 의해서 삭제되었습니다.

프로필 이미지
새롬찬
2019-11-21
9
글번호 133803
시스템
답변완료

국선 야간 고점 저점 문의

국내선물 전일 고점은 dayhigh(1) 전일 저점은 daylow(1) 이렇게 표시하잖아요. 그런데 국선 야간 고점과 저점은 어떻게 표시하는지요?
프로필 이미지
천왕봉
2019-11-21
183
글번호 133802
시스템
답변완료

수식작성 부탁합니다.

안녕하세요 1.현재수식은 상단선 하단선을 완성봉으로 뚫었을때 다음봉 매도,매수 진입입니다. 상단선 하단선을 완성봉으로 뚫었을때가 아닌 터치만 하면 다음봉 진입으로 변경바랍니다. 2.현재는 매수진입후 포지션 보유중 다시 매수신호가 발생하지 않습니다.(매도도 마찬가지임) 포지션 보유중 동일신호 2회 까지만 진입/청산 할수 있도록 변경바랍니다. 감사합니다. input : period(100),multi(1.2); input : 익절틱수(50),손절틱수(70); var : BBmd(0),BBup(0),BBdn(0); BBmd = ma(C,Period); BBup = BollBandUp(Period,Multi); BBdn = BollBandDown(Period,Multi); if MarketPosition >= 0 and crossup(C,BBup) Then sell("s",AtMarket); if MarketPosition <= 0 and CrossDown(C,BBdn) Then buy("b",AtMarket); SetStopProfittarget(PriceScale*익절틱수,PointStop); SetStopLoss(PriceScale*손절틱수,PointStop);
프로필 이미지
새롬찬
2019-11-21
196
글번호 133801
시스템
답변완료

문의 드립니다.

안녕하세요. 그림파일에서 동그라미 친 부분이 어떤 방식으로 생성되는건지 몰라 문의 드립니다. 매매에 참고할 수 있는건지, 아니면 그냥 없애도 되는건지 모르겠습니다. 1. 혹시 아신다면 어떻게해서 만들어지는 선들인지 대략적인 설명좀 부탁드리며... 2. 동그라미 부분의 선들이 나오지 않도록 수식 수정 부탁드립니다. 3. 가장 작은 동그라미 선은 필요한것 같기도 해서, 그 선은 나오는 수식도 하나 부탁드리겠습니다. (제가 수식을 잘 모르기에 ㅠ... 번거롭게 해서 죄송합니다.) Var:Period(20),선두께(1),상승색(BWHITE), 하락색(BWHITE); Var:j(0),T(0); Var: date11(0),date12(0),time11(0),time12(0),TL1(0), date21(0),date22(0),time21(0),time22(0), date31(0),date32(0),time31(0),time32(0),tx(0),tx1(0),tl4(0); Array:HiVal[20](0),LoVal[20](0),HiBar[20](0),LoBar[20](0)/*,ZZ[20](0)*/; Array:r[7](0),fr[7](0),TL2[7](0),TL3[7](0),TX2[7](0),TX3[7](0); r[0] = 0; r[1] = 2; r[2] = 3.; r[3] = -1; r[4] = -2.; r[5] = 1; r[6] = 0.5; For j = 0 To 19 { HiBar[j] = HiBar[j] + 1; LoBar[j] = LoBar[j] + 1; } if crossup(c,highest(H,Period)[1]) Then T = 1; if CrossDown(c,Lowest(L,Period)[1]) Then T = -1; If T == -1 Then { If T[1] != -1 Then { For j = 18 DownTo 0 { LoVal[j+1] = LoVal[j]; LoBar[j+1] = LoBar[j]; //ZZ[j+1] = ZZ[j]; } LoVal[0] = L; LoBar[0] = 0; //ZZ[0] = L; date11 = date[HiBar[0]]; time11 = stime[HiBar[0]]; Value11 = HiVal[0]; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,상승색); Tx = Text_New(date11,time11,Value11,"●"); #동그라미 색상, 빨강 Text_SetColor(Tx,RED); Text_SetStyle(Tx,2,2); tx = Text_New(date11,time11,Value11,NumToStr(value11,2)+NewLine+NumToStr(value11,2)+NewLine); Text_SetStyle(tx,2,1); date21 = date[HiBar[0]]; time21 = stime[HiBar[0]]; date22 = date[0]; time22 = stime[0]; for j = 0 to 6 { fr[j] = LoVal[1] + ((HiVal[0] - LoVal[1]) * r[j]); } TL2[0] = TL_New(date21,time21,fr[0],date22,time22,fr[0]); TL_SetColor(TL2[0],RED); TL2[1] = TL_New(date21,time21,fr[1],date22,time22,fr[1]); TL_SetColor(TL2[1],RED); TL_SetStyle(TL2[1], 3); TL2[2] = TL_New(date21,time21,fr[2],date22,time22,fr[2]); TL_SetColor(TL2[2],RED); TL_SetSize(TL2[2],1); TX2[2] = Text_New(date22,time22,fr[2],NumToStr(fr[2],2)); Text_SetColor(Tx2[2],BWHITE); Text_SetStyle(TX2[2],1,1); TL2[3] = TL_New(date21,time21,fr[3],date22,time22,fr[3]); TL_SetColor(TL2[3],RED); TL_SetStyle(TL2[3], 3); TL2[4] = TL_New(date21,time21,fr[4],date22,time22,fr[4]); TL_SetColor(TL2[4],RED); TL_SetSize(TL2[4],1); TX2[4] = Text_New(date22,time22,fr[4],NumToStr(fr[4],2)); Text_SetColor(Tx2[4],BWHITE); Text_SetStyle(TX2[4],1,0); TL2[5] = TL_New(date21,time21,fr[5],date22,time22,fr[5]); TL_SetColor(TL2[5],RED); TL2[6] = TL_New(date21,time21,fr[6],date22,time22,fr[6]); TL_SetColor(TL2[6],MAGENTA); } If LoVal[0] > L Then { LoVal[0] = L; LoBar[0] = 0; //ZZ[0] = L; date12 = date[LoBar[0]]; time12 = stime[LoBar[0]]; Value12 = LoVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date22 = date[0]; time22 = stime[0]; Tx = Text_New_Self(date12,time12,Value12,NumToStr(abs(value11-value12)/PriceScale,0)+" "); #동그라미 색상, 빨강 Text_SetColor(Tx,BLUE); Text_SetStyle(Tx,1,0); TL_SetEnd(TL2[0],date22,time22,fr[0]); TL_SetEnd(TL2[1],date22,time22,fr[1]); TL_SetEnd(TL2[2],date22,time22,fr[2]); Text_SetLocation(TX2[2],date22,time22,fr[2]); TL_SetEnd(TL2[3],date22,time22,fr[3]); TL_SetEnd(TL2[4],date22,time22,fr[4]); Text_SetLocation(TX2[4],date22,time22,fr[4]); TL_SetEnd(TL2[5],date22,time22,fr[5]); TL_SetEnd(TL2[6],date22,time22,fr[6]); } } If T == 1 Then { If T[1] != 1 Then { For j = 18 DownTo 0 { HiVal[j+1] = HiVal[j]; HiBar[j+1] = HiBar[j]; //ZZ[j+1] = ZZ[j]; } HiVal[0] = H; HiBar[0] = 0; //ZZ[0] = H; date11 = date[LoBar[0]]; time11 = stime[LoBar[0]]; Value11 = LoVal[0]; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL1 = TL_New(date11,time11,Value11,date12,time12,Value12); TL_SetColor(TL1,하락색); Tx1 = Text_New(date11,time11,Value11,"●"); #동그라미 색상, 파랑 Text_SetColor(Tx1,BLUE); Text_SetStyle(Tx1,2,2); tx = Text_New(date11,time11,Value11,NewLine+NumToStr(value11,2)+NewLine+NumToStr(value11,2)); Text_SetStyle(tx,2,0); date31 = date[LoBar[0]]; time31 = stime[LoBar[0]]; date32 = date[0]; time32 = stime[0]; for j = 0 to 5 { fr[j] = LoVal[0] + ((HiVal[1] - LoVal[0]) * r[j]); } TL3[0] = TL_New(date31,time31,fr[0],date32,time32,fr[0]); TL_SetColor(TL3[0],BLUE); TL3[1] = TL_New(date31,time31,fr[1],date32,time32,fr[1]); TL_SetColor(TL3[1],BLUE); TL_SetStyle(TL3[1], 3); TL3[2] = TL_New(date31,time31,fr[2],date32,time32,fr[2]); TL_SetColor(TL3[2],BLUE); TL_SetSize(TL3[2],1); TX3[2] = Text_New(date32,time32,fr[2],NumToStr(fr[2],2)); Text_SetColor(Tx3[2],BWHITE); Text_SetStyle(TX3[2],1,1); TL3[3] = TL_New(date31,time31,fr[3],date32,time32,fr[3]); TL_SetColor(TL3[3],BLUE); TL_SetStyle(TL3[3], 3); TL3[4] = TL_New(date31,time31,fr[4],date32,time32,fr[4]); TL_SetColor(TL3[4],BLUE); TL_SetSize(TL3[4],1); TX3[4] = Text_New(date32,time32,fr[4],NumToStr(fr[4],2)); Text_SetColor(Tx3[4],BWHITE); Text_SetStyle(TX3[4],1,0); TL3[5] = TL_New(date31,time31,fr[5],date32,time32,fr[5]); TL_SetColor(TL3[5],BLUE); TL3[6] = TL_New(date31,time31,fr[6],date32,time32,fr[6]); TL_SetColor(TL3[6],cyan); } If HiVal[0] < H Then { HiVal[0] = H; HiBar[0] = 0; //ZZ[0] = H; date12 = date[HiBar[0]]; time12 = stime[HiBar[0]]; Value12 = HiVal[0]; TL_SetEnd(TL1, date12,time12,Value12); date32 = date[0]; time32 = stime[0]; Tx = Text_New_Self(date12,time12,Value12,NumToStr(abs(value11-value12)/PriceScale,0)+" "); #동그라미 색상, 빨강 Text_SetColor(Tx,RED); Text_SetStyle(Tx,1,1); TL_SetEnd(TL3[0],date32,time32,fr[0]); TL_SetEnd(TL3[1],date32,time32,fr[1]); TL_SetEnd(TL3[2],date32,time32,fr[2]); Text_SetLocation(TX3[2],date32,time32,fr[2]); TL_SetEnd(TL3[3],date32,time32,fr[3]); TL_SetEnd(TL3[4],date32,time32,fr[4]); Text_SetLocation(TX3[4],date32,time32,fr[4]); TL_SetEnd(TL3[5],date32,time32,fr[5]); TL_SetEnd(TL3[6],date32,time32,fr[6]); } } TL_SetSize(TL1,선두께);
프로필 이미지
조르바
2019-11-21
261
글번호 133799
지표

폴로1130 님에 의해서 삭제되었습니다.

프로필 이미지
폴로1130
2019-11-21
5
글번호 133798
지표
답변완료

수식 문의 드립니다.

안녕하세요, 항상 수고가 많으십니다. 1번:오늘 종가 매도후 다음날 종가에 청산되는 시스템 수식 1번이 불가능하다면 2번 오늘 종가 직전 1분봉에서 매도후 계속 포지션 보유후 다음날 종가 직전 1분봉에 청산되는 수식 2번 시스템 수식 부탁드립니다. 감사합니다.
프로필 이미지
kwanq
2019-11-20
205
글번호 133797
시스템
답변완료

수식 문의 드립니다.

수식 감사합니다. 여기에 하나더 추가 요청 드립니다. 스톡케스틱 슬로우로.. 0 ~ 20 구간일때 1계약 매수하고, 스톡케스틱이 30 까지 같다가 다시 25 영역으로 다시 내려 왔을때 계좌에 1계약 있으면 추가로 매수 하지 않고 기다리다가 80 에서 84 구간에 갔을때 청산, 그리고 75 구간에 1계약 매도 하고, 이때도 마찬가지로 60까지 갔다가 다시 75에 가면 계좌를 확인한후 1계약 매도 포지션 취하고 있으면 추가로 1계약 매도 하지 않고, 25 구간에 진입시 청산 이렇게 반복하는 수식 부탁 드립니다. 수고하세요. > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식 문의 드립니다. > 안녕하세요 예스스탁입니다, 1 Input : Period(12), Period1(9) ,BuyLevel(25),SellLevel(85); Var : value(0); value = StochasticsK(Period,Period1); If CrossUP(value, BuyLevel) Then { Buy(); } If CrossDown(value, SellLevel) Then { Sell(); } 2 input : sto1(12),sto2(9),sto3(9); var : stok(0),stod(0); stok = StochasticsK(sto1,sto2); stod = StochasticsD(sto1,sto2,sto3); plot1(stok,"slowk"); plot2(stod,"slowd"); PlotBaseLine1(20); PlotBaseLine2(80); 즐거운 하루되세요 > 백두에서한라 님이 쓴 글입니다. > 제목 : 수식 문의 드립니다. > 두가지 질문 드립니다. 스톡케스특 설정을 12,9,9 로 설정을 하고 스톡케스틱 그래프상 0 -> 25 이하에 있으면 매수 . 100 -> 85 찍을때 매도 하는 지표 부탁 드리며 이것을 시스템에도 적용될수 있게, 두가지 수식 부탁드립니다. 1. 지표 수식 2. 시스템 수식 수고하세요.
프로필 이미지
백두에서한라
2019-11-21
251
글번호 133796
시스템
답변완료

수식 부탁드립니다

1분봉9개중 양봉이 5개일때 9분봉9개중 양봉이 5개일때 33분봉9개중 양봉이 5개가 동일할때 매수신호후 20틱청산신호와 1분봉9개중 음봉이 5개일때 9분봉9개중 음봉이 5개일때 33분봉9개중 음봉이 5개가 동일할때 매도신호후 20틱청산의 시스템 수식을 부탁드립니다
프로필 이미지
푸른
2019-11-20
257
글번호 133783
시스템
답변완료

수식문안드립니다.

A.일목에서 후행만 사용하고 싶습니다. 1.shift(close,-midPeriod1+1) 2.shift(close,-midPeriod2+1) 3.shift(close,-midPeriod3+1) 4.shift(close,-midPeriod4+1) 5.shift(close,-midPeriod5+1) 지표조건설정 midPeriod1 5 midPeriod2 10 midPeriod3 20 midPeriod4 40 midPeriod5 60 B.일목에서 전환선만 사용하고 싶습니다. 1.(highest(high,shortPeriod1)+lowest(low,shortPeriod1))/2 2.(highest(high,shortPeriod2)+lowest(low,shortPeriod2))/2 3.(highest(high,shortPeriod3)+lowest(low,shortPeriod3))/2 4.(highest(high,shortPeriod4)+lowest(low,shortPeriod4))/2 5.(highest(high,shortPeriod5)+lowest(low,shortPeriod5))/2 6.(highest(high,shortPeriod6)+lowest(low,shortPeriod6))/2 7.(highest(high,shortPeriod7)+lowest(low,shortPeriod7))/2 8.(highest(high,shortPeriod8)+lowest(low,shortPeriod8))/2 지표조건설정 shortperiod1 5 shortperiod2 10 shortperiod3 20 shortperiod4 60 shortperiod5 120 shortperiod6 240 shortperiod7 480 shortperiod8 960
프로필 이미지
무자대기
2019-11-20
209
글번호 133782
지표