커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

문의드립니다!

안녕하세요! 1, 아래 "수식1"은 얼마전에 답변해주신 수식인데요 이수식을 교차챠트를 만들어 콜캔들에 적용시는 세로선등이 제대로 작동이 되는데 풋캔들에 적용시는 세로선등이 틀리게 나오네요 풋캔들에 적용시는 수식이나 기타 어떤설정등을 달리해야하나요? 2, 아래 "수식2"를 기반으로해서 이 수식을 좀더 범위를 넓혀서 아래와같이 수정해주시면 감사하겠습니다 (1) 콜풋봉 각각 3개씩 해서 총 6개의 봉으로 교차챠트를 만들었습니다 * data1 콜1, data2 풋1, data3 콜2, data4 풋2,....... (2) 이 6개의 봉이 각각 상대봉의 고점 저점을 만날때 세로선과 음성신호 발생 즉, 콜봉1 이 풋봉 3개의 고점 저점을 각각 만날때로서 여섯곳이 대상이 되겠네요 이런식으로하면 총 36곳이 대상이 됩니다 (6*6=36) (3) 이렇게해서 어떤봉이던 조건이 만족시 세로선과 음성신호가 발생되도록 부탁드립니다 * 세로선의 두께와 색상 그리고 N틱전 설정은 아래 수식과 똑같이 작성바랍니다 * 단순작업이 반복되는 구간이 많아 번거로우시다면 첫 예시만 작성해주시면 이후는 제가 작성하겠습니다 항상 감사드립니다!!! ------------------------------------------------------------------------------------ (수식 1) input : 굵기1(2),굵기2(2),굵기3(2),색상1(RED),색상2(BLUE),색상3(GREEN); var : 당일시가(0),전일시가(0),금일종가(0),전일종가(0); var : 금일고가(0),전일고가(0),금일저가(0),전일저가(0); var : 금일중간가격(0),전일중간가격(0),천정대칭가격(0),바닥대칭가격(0); var : Tx1(0),tx2(0),tx3(0),tx4(0),tx5(0),tx6(0); var : Tx7(0),tx8(0),tx9(0),tx10(0),tx11(0),tx12(0),TL1(0),TL2(0),TL3(0); 당일시가 = dayopen; 전일시가 = dayopen(1); 금일종가 = dayclose; 전일종가 = dayclose(1); 금일고가 = dayhigh; 전일고가 = dayhigh(1); 금일저가 = daylow; 전일저가 = daylow(1); 금일중간가격 = (dayhigh + daylow)/2; 전일중간가격 = (dayhigh(1)+daylow(1))/2; 천정대칭가격 = dayhigh + (dayhigh - dayhigh(1)); 바닥대칭가격 = daylow - (daylow-daylow(1)); Plot1(당일시가); Plot2(전일시가); Plot3(금일종가); Plot4(전일종가); Plot5(금일고가); Plot6(전일고가); Plot7(금일저가); Plot8(전일저가); Plot9(금일중간가격); Plot10(전일중간가격); Plot11(천정대칭가격); Plot12(바닥대칭가격); if Index == 1 or Bdate != Bdate[1] Then { tx1 = Text_New_Self(sDate,sTime,당일시가,"당일시가 "+NumToStr(당일시가,2)); tx2 = Text_New_Self(sDate,sTime,전일시가,"전일시가 "+NumToStr(전일시가,2)); tx3 = Text_New_Self(sDate,sTime,금일종가,"금일종가 "+NumToStr(금일종가,2)); tx4 = Text_New_Self(sDate,sTime,전일종가,"전일종가 "+NumToStr(전일종가,2)); tx5 = Text_New_Self(sDate,sTime,금일고가,"금일고가 "+NumToStr(금일고가,2)); tx6 = Text_New_Self(sDate,sTime,전일고가,"전일고가 "+NumToStr(전일고가,2)); tx7 = Text_New_Self(sDate,sTime,금일저가,"금일저가 "+NumToStr(금일저가,2)); tx8 = Text_New_Self(sDate,sTime,전일저가,"전일저가 "+NumToStr(전일저가,2)); tx9 = Text_New_Self(sDate,sTime,금일중간가격,"금일중간가격 "+NumToStr(금일중간가격,2)); tx10 = Text_New_Self(sDate,sTime,전일중간가격,"전일중간가격 "+NumToStr(전일중간가격,2)); tx11 = Text_New_Self(sDate,sTime,천정대칭가격,"천정대칭가격 "+NumToStr(천정대칭가격,2)); tx12 = Text_New_Self(sDate,sTime,바닥대칭가격,"바닥대칭가격 "+NumToStr(바닥대칭가격,2)); } Else { Text_SetLocation(tx1,NextBarSdate,NextBarStime,당일시가); Text_SetLocation(tx2,NextBarSdate,NextBarStime,전일시가); Text_SetLocation(tx3,NextBarSdate,NextBarStime,금일종가); Text_SetLocation(tx4,NextBarSdate,NextBarStime,전일종가); Text_SetLocation(tx5,NextBarSdate,NextBarStime,금일고가); Text_SetLocation(tx6,NextBarSdate,NextBarStime,전일고가); Text_SetLocation(tx7,NextBarSdate,NextBarStime,금일저가); Text_SetLocation(tx8,NextBarSdate,NextBarStime,전일저가); Text_SetLocation(tx9,NextBarSdate,NextBarStime,금일중간가격); Text_SetLocation(tx10,NextBarSdate,NextBarStime,전일중간가격); Text_SetLocation(tx11,NextBarSdate,NextBarStime,천정대칭가격); Text_SetLocation(tx12,NextBarSdate,NextBarStime,바닥대칭가격); } if (H >= 전일고가-PriceScale*3 and H[1] < 전일고가-PriceScale*3) or (L <= 전일고가+PriceScale*3 and L[1] > 전일고가+PriceScale*3) Then { TL1 = TL_New(sDate,sTime,99999999,sDate,sTime,0); TL_SetColor(TL1,색상1); TL_SetSize(TL1,굵기1); PlaySound(); } if (H >= 천정대칭가격-PriceScale*3 and H[1] < 천정대칭가격-PriceScale*3) or (L <= 천정대칭가격+PriceScale*3 and L[1] > 천정대칭가격+PriceScale*3) Then { TL2 = TL_New(sDate,sTime,99999999,sDate,sTime,0); TL_SetColor(TL2,색상2); TL_SetSize(TL2,굵기2); PlaySound(); } if (H >= 바닥대칭가격-PriceScale*3 and H[1] < 바닥대칭가격-PriceScale*3) or (L <= 바닥대칭가격+PriceScale*3 and L[1] > 바닥대칭가격+PriceScale*3) Then { TL3 = TL_New(sDate,sTime,99999999,sDate,sTime,0); TL_SetColor(TL3,색상3); TL_SetSize(TL3,굵기3); PlaySound(); } ----------------------------------------------------------------------------------- (수식 2) input : N(5),굵기(0); var : H1(0,data1),L1(0,data1),H2(0,Data1),L2(0,Data1); var : TL1(0,data1),TL2(0,data1),TL3(0,data1),TL4(0,data1); H1 = data1(DayHigh(0)); L1 = data1(DayLow(0)); H2 = data2(HighD(0)); L2 = data2(LowD(0)); Plot1(H1,"data1 최고"); Plot2(L1,"data1 최저"); Plot3(H2,"data2 최고"); Plot4(L2,"data2 최저"); #data1가격이 상승해 Data2 최고가-N틱을 만날때 if data1(H) >= H2-PriceScale*N and data1(H[1]) < H2[1]-PriceScale*N Then { PlaySound("C:예스트레이더dataSound.wav"); TL1 = TL_new(sDate,sTime,99999999,sDate,sTime,0); TL_SetSize(TL1,굵기); TL_SetColor(TL1,RED); } #data1가격이 하락해 Data2 최저가+N틱을 만날때 if data1(L) <= L2+PriceScale*N and data1(L[1]) > L2[1]+PriceScale*N Then { PlaySound("C:예스트레이더dataSound.wav"); TL2 = TL_new(sDate,sTime,99999999,sDate,sTime,0); TL_SetSize(TL2,굵기); TL_SetColor(TL2,BLUE); } #data2가격이 상승해 Data1 최고가-N틱을 만날때 if data2(H) >= H1-PriceScale*N and data2(H[1]) < H1[1]-PriceScale*N Then { PlaySound("C:예스트레이더dataSound.wav"); TL3 = TL_new(sDate,sTime,99999999,sDate,sTime,0); TL_SetSize(TL3,굵기); TL_SetColor(TL3,MAGENTA); } #data2가격이 하락해 Data1 최저가+N틱을 만날때 if data2(L) <= L1+PriceScale*N and data2(L[1]) > L1[1]+PriceScale*N Then { PlaySound("C:예스트레이더dataSound.wav"); TL4 = TL_new(sDate,sTime,99999999,sDate,sTime,0); TL_SetSize(TL4,굵기); TL_SetColor(TL4,CYAN); }
프로필 이미지
유로파54
2020-09-22
873
글번호 142507
지표
답변완료

수식 부탁드립니다.

안녕하세요? 종목 검색 수식 도움 부탁 드립니다. 1.Bollinger band(30.2) 종가가 상한선 돌파 2.Bollinger band(20.2) 종가가 상한선 돌파 3.Envelope(10,5) 종가가 Envelope 상한선 상향돌파 4.Envelope(30,5) 종가가 Envelope 상한선 상향돌파 5.당일시가가 전일고가 돌파 6.당일거래량이 전일 거래량 2배이상 위 내용이 동시 나올때 종목검색 나오 도록 부탁드립니다. 감사합니다.
프로필 이미지
키오
2020-09-18
939
글번호 142500
종목검색
답변완료

문의드립니다

안녕하세요. 수고 많으십니다. 수식에 관한 질문이 있습니다. 1.조건은 cci가9에 5가 0선을 상승돌파 할때 ADX14 가 추세상승 2봉연속일때 진입 부가적조건: ( 1.조건)이 만족하였을때만 진입 부가조건----> ADX구간 14>25(수치) 진입하지않음, 18>30(수치) 진입하지않음 16>11(수치) 진입 매도청산 cci 45가 6봉 연속 추세하방 매매시간 9:01~15:19 스탑로스 2.5p 트레일링 스탑 2.2 / 65% 청산 너무 복잡하여 죄송합니다 수식을 부탁드립니다. 정말 감사합니다.
프로필 이미지
김영재
2020-09-18
1097
글번호 142498
시스템

chunsk 님에 의해서 삭제되었습니다.

프로필 이미지
chunsk
2020-09-18
0
글번호 142496
시스템
답변완료

당일 목표 수익 달성 후 매매 제한 조건식 부탁드립니다.

안녕하세요! 매번 고생이 많으십니다. 나스닥 시스템매매를 진행하고 있습니다. 당일 매매시간 오전 07:00부터~익일 06:00 까지, 청산 후 목표 수익 100pt이상을 달성(보유중 달성은 아님)할 경우, 반대로 청산 후 당일 손실이 100pt 이상 발생할 경우 신호가 나와도 매매를 진행하지 않는 조건으로 하는 거래제한 조건식을 만들고 싶습니다. 단, 상기 조건을 만족하지 않은체 예를 들어 새벽 5:00에 진입이 되고 보유중이라면, 당일 청산 (06:00)이 아닌 다음날로 오버되어 해당 손익집계는 익일로 되었으면 합니다. 도움 주시면 감사하겠습니다.
프로필 이미지
bin
2020-09-18
893
글번호 142495
시스템
답변완료

중심가 일자선

안녕하십니까. 전일중심가 일자선을 원합니다 1, 분봉상 시가+종가/2 수식 부탁 드립니다
프로필 이미지
수익챠트
2020-09-18
754
글번호 142494
지표

2wnwn 님에 의해서 삭제되었습니다.

프로필 이미지
2wnwn
2020-09-18
17
글번호 142493
시스템
답변완료

부탁드립니다

17분봉 기준 9:17분 이후부터 매매 시작 직전 17분봉 캔들차트 고점 보다 현재 17분봉 캔들차트의 고점이 0.5이상 높거나 같으면 현재 17분봉 차트 종가에 매수진입 다음 17분봉 캔들차트 고점에 매수청산 -------------------------------------------------------------------------------------- 17분봉 기준 9:17분 이후부터 매매 시작 직전 17분봉 캔들차트 고점 보다 현재 17분봉 캔들차트의 고점이 0.5이상 낮거나 같으면 현재 17분봉 차트 종가에 매도진입 다음 17분봉 캔들차트 고점에 매도청산 부탁드리겠습니다^^
프로필 이미지
회원
2020-09-17
726
글번호 142492
시스템
답변완료

분할매도 관련 문의

안녕하세요 담당자님 항상 도와주셔서 큰 도움이 되고있습니다. 매수조건 1개와 매도 조건 2개를 이용하여, 매도 시 절반씩 분할하여 매도하는 시스템식을 작성하였습니다. 최초 매도조건에 절반을 매수하고, 마지막 매도조건에 전액을 매도하도록 하고자 합니다. 물론 고정진입수량을 지정하면 되지만, 예수금기준으로 매수 가능한 수량을 계산하여 매번 변화하는 계약수로 평가하는 의도로 작성하였습니다. 하지만 두번째 매도식에서 전액을 팔지 않고 절판만 매도하여 미청산금이 누적되는 문제가 있습니다. 아래 수식에서 디버그가 가능할지, 혹은 더 좋은 방법이 있으면 알려주시면 감사하겠습니다. Input : VPeriod(30),SPeriod(5),Deposit(10000000); var : X(1),Y(1),contract(0); #계약수 짝수화 if Mod(floor((Deposit-entryprice*CurrentContracts)/C),2) ==1 Then Contract = floor((Deposit-entryprice*CurrentContracts)/C)-1; Else if Mod(floor((Deposit-entryprice*CurrentContracts)/C),2) == 0 then Contract = floor((Deposit-entryprice*CurrentContracts)/C); #매수 If CrossUp(CCI(Vperiod),-100) then Buy("과매도매수",Atmarket,DEF,contract); #두번째 매도조건에 전량 매도하기 위한 수식 If ExitName(1) == "매도" Then{ X == 2; } If ExitName(1) == "손절" Then{ Y == 2; } if marketposition==1 and C[1]>C[0] then{ exitlong("매도",AtMarket,DEF,"과매도매수",CurrentContracts/2*Y); } if marketposition==1 and C <= Lowest(C,SPeriod) Then{ exitlong("손절",AtMarket,DEF,"과매도매수",CurrentContracts/2*X); }
프로필 이미지
기사단장
2020-09-17
887
글번호 142491
시스템