커뮤니티

예스랭귀지 Q&A

글쓰기
답변완료

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

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

수식 여쭤봅니다~

안녕하세요~ 수식에서 2차매수가 일어나지 않아 다시 문의 드립니다. 개별주식 1분봉 차트에서 적용하는 수식입니다. 1차매수는 오늘 시가에서 매수 2차매수는 전일종가 대비 -2% 에서 매수 입니다. 1분봉에서 적용중인데 오늘시가 매수는 잘일어나는데 1차매수후 하락하여 전일 일봉 종가 대비 -2% 도달시에 2차매수가 일어나지 않습니다. 감사합니다~ ps .피라미딩 - 다른신호만 허용으로 체크를 안해서 그럴까요? ---------------------------------- input : 금액(300000),매수1(60),매수2(40); var : trade(false); if bdate != date[1] Then trade = true; if MarketPosition == 0 and TotalTrades > TotalTrades[1] Then trade = false; if NextBarSdate != sdate and NextBarOpen >= c and NextBarOpen <= C*1.04 Then { buy("b1",AtMarket,DEF,Floor((금액*(매수1/100))/NextBarOpen)); buy("b2",Atlimit,NextBarOpen*0.98,Floor((금액*(매수2/100))/(NextBarOpen*0.98))); } if MarketPosition == 1 then { if trade == true and MaxEntries == 1 and stime >= 90000 and stime < 93000 and dayopen(0) >= DayClose(1) and dayopen(0) <= DayClose(1)*1.04 Then buy("b2.",Atlimit,dayopen(0)*0.98,Floor((금액*(매수2/100))/(dayopen(0)*0.98))); if countif(LatestExitName(0) == "bp1",BarsSinceEntry) < 1 Then ExitLong("bp1",atlimit,AvgEntryPrice*1.03,"",Floor(CurrentContracts*0.7),1); if countif(LatestExitName(0) == "bp1",BarsSinceEntry) < 1 Then ExitLong("bp2",atlimit,AvgEntryPrice*1.06,"",Floor(CurrentContracts*0.7),1); ExitLong("bp3",atlimit,AvgEntryPrice*1.09); if LatestExitName(0) == "bp1" or LatestExitName(0) == "bp2" then { ExitLong("bx",AtStop,highest(H,BarsSinceEntry)*0.98); } if countif(LatestExitName(0) == "bl1",BarsSinceEntry) < 1 Then ExitLong("bl1",AtStop,AvgEntryPrice*0.95,"",floor(CurrentContracts*0.5),1); ExitLong("bl2",AtStop,AvgEntryPrice*0.93); } SetStopEndofday(151800);
프로필 이미지
부자청년28
2019-07-04
251
글번호 130026
시스템
답변완료

문의

ATM연결-2단계 콜옵션차트를 이용합니다. 수식 내용에 전일 오픈가격을 참조하는 내용이 있습니다. 6월13일 진입시 참고한 전일 오픈가격은 차트상 12일 오픈가격 5.80을 참고하는 것인지요? ************************************************************************************ input : 목표가(4.65),거래횟수(1); var : Entry(0),T1(0); if Bdate != Bdate[1] Then T1 = TotalTrades; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if entry < 거래횟수 and DayOpen(1) > 목표가 and C < O then { if NextBarOpen > 목표가 Then sell("",AtStop,목표가); Else sell("",atlimit,목표가); }
프로필 이미지
목마와숙녀
2019-07-04
281
글번호 130024
시스템
답변완료

문의드립니다.

도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다. 1 .기타 이 수식이요. 앞의 질문 2번 수식인데요. 본 수식은 해당 레인지 돌파하면 그 방향 진입하는 거고 수정 요청 드린 건 이전 진입이 수익이면 앞선 진입과 반대 방향 진입, 이전 진입이 손실이면 수식대로 진입하는 내용인데 실행해보니 그냥 이전이 수익이더라도 그 방향으로 가고 아니어도 그 방향으로 가는 것 같습니다. Inputs: InitMin(90); Variables: SessStartMin(0), TradeTime(0), SetHigh(0), SetLow(0), LongFlag(False), ShortFlag(False); #conversion of hour-based time to minute-based time SessStartMin = TimeToMinutes(90000); TradeTime = TimeToMinutes(sTime); input : 진입횟수(1),손절률(1),익절률(1); var : count(0),T1(0); input : 진입시간(90000),제한시간(150000),청산시간(153400),특정수익(3); var : Tcond(false),pl(0),ps(0); SetStopLoss(손절률,PercentStop); SetStopProfittarget(익절률,PercentStop); if (sdate != sdate[1] and stime >= 청산시간) or (sdate == sdate[1] and stime >= 청산시간 and stime[1] < 청산시간) then { Tcond = false; if MarketPosition == 1 Then exitlong(); if MarketPosition == -1 Then ExitShort(); } if (sdate != sdate[1] and stime >= 진입시간) or (sdate == sdate[1] and stime >= 진입시간 and stime[1] < 진입시간) then { Tcond = true; T1 = TotalTrades; } if (sdate != sdate[1] and stime >= 제한시간) or (sdate == sdate[1] and stime >= 제한시간 and stime[1] < 제한시간) then { Tcond = false; } if MarketPosition == 0 Then count = TotalTrades-T1; Else count = TotalTrades-T1+1; if Count < 진입횟수 and Tcond == true then { #Setup - establishment of the initial range If TradeTime <= SessStartMin + InitMin Then { If Date <> Date[1] Then { SetHigh = High; SetLow = Low; LongFlag = True; ShortFlag = True; } Else { If High > SetHigh Then SetHigh = High; If Low < SetLow Then SetLow = Low; } } Else { #Entries once the initial period has ended if MarketPosition == 0 Then { pl = PositionProfit(1); ps = MarketPosition(1); } Else { pl = PositionProfit(0); ps = MarketPosition(0); } If LongFlag AND CrossUp( Close , SetHigh) Then { if pl <= 0 or (PL > 0 and ps != 1) Then Buy(); } If ShortFlag AND CrossDown(Close , SetLow) Then { if pl <= 0 or (pl > 0 and ps != -1) then Sell(); } } } #Long Protective Exit If MarketPosition == 1 Then { LongFlag = False; ExitLong("",atstop,SetLow ); ExitLong("BS",atlimit,EntryPrice+특정수익 ); } #Short Protective Exit If MarketPosition == -1 Then { ShortFlag = False; ExitShort("",atstop,SetHigh ); ExitShort("SB",atlimit,EntryPrice-특정수익 ); } input: TsValue(80); var: Hvalue(0),Lvalue(0); If MarketPosition() == 1 Then { Hvalue = Highest(H,BarsSinceEntry+1); ExitLong("trailstop_EL", Atstop, Hvalue-TsValue*PriceScale); } If MarketPosition() == -1 Then { Lvalue = Lowest(L,BarsSinceEntry+1); ExitShort("trailStop_Es", Atstop, Lvalue + TsValue*PriceScale); } 2. 궁금해서 그러는데요. 작성해주신 2번 전략은 정확히 어떻게 작동하는 건가요? 본 전략이랑 성과가 다르긴 한 것 같은데 차트만 봐서는 뭐가 다른지 잘 모르겠습니다. if pl <= 0 or (PL > 0 and ps != 1) Then Buy(); 여기로 이전 수익이랑 마켓 포지션 나누어 놓은 것 같기는 한데요. 정확히 어떻게 작동하는지 궁금합니다. 3. 앞선 질문의 3번 전략도요. 제가 보기엔 진입횟수도 적고 뭔가 제가 생각한 방향으로 안 나왔습니다. 첨부파일 2와 같은 것처럼 진입하게 하고 싶었거든요. 4. 1번 수식도 본수식(특정시간 인트라데이 돌파전략)의 매수 매도 조건을 만약 이전 수익이 특정 수익이상일 때 반대로 (원래 buy 수식이면 sell로, 그러니까 원래는 정방향 진입인데 특정 수익이 발생한 다음 매매에서는 역방향 진입)하는 거였는데 트레일링 스탑에만 있네요. 글로 어설프게 쓰다보니 설명을 잘 못하는 듯 합니다. 수식 도움 좀 부탁드립니다.
프로필 이미지
잡다백수
2019-07-04
295
글번호 130019
시스템
답변완료

검색식 부탁드립니다

항상 도움주셔서 감ㅅ합니다. 5분봉 저가가 우상사 우상향 하는 종목 검색이 가능 할까요?!
프로필 이미지
회원
2019-07-04
260
글번호 130018
검색
답변완료

산식검토

이렇게하면 양봉도 함께 검색되는 이유가 뭔지요? 음봉만 검색할수있게 부탁드립니다 If DayOpen(0)>DayClose(0) and DayClose(0)/DayClose(1)<0.90 Then Condition1 = true; Else Condition1 = false; if Condition1[n] == true Then find(1);
프로필 이미지
티끌
2019-07-04
270
글번호 130017
종목검색
답변완료

문의 합니다

문의 합니다. 선물거래에서 예;100틱봉차트에서 차트가 사승또는 하락할때 10틱이오르면 10틱 20틱 30틱...등 숫자가 오른만큼 숫자로 표시되고 상승.하락화살표신호뒤에 매수.매도등이 표시되는 차트를 어덯게 설정하는지요? 설정하는 순서 방법을 알려 주세요.부탁 드립니다.
프로필 이미지
청해리
2019-07-03
296
글번호 130016
지표
답변완료

종목 검색식에 관해 문의 드립니다.

안녕하세요? 예스랭귀지 '종목 검색식'에 관한 문의를 드리겠습니다. ^^ 다음은 제가 사용 중인 '영웅문4의 수식'입니다. (다음의 함수는 60분봉 차트에서 표현된 일봉 상 고가(DayHigh()....)와 저가(DayLow()....)입니다.) AA = (max(nPredayhigh(3),nPredayhigh(2),PreDayHigh(),DayHigh())+min(nPredaylow(3),nPredaylow(2),PreDayLow(),DayLow()))/2 CROSSUP(C,AA) THEN FIND(1); AA 값의 설명 : (MAX(3봉전 전일 고가, 2봉전 전일 고가, 전일 고가, 금일 고가) + MIN(3봉전 전일 저가, 2봉전 전일 저가, 전일 저가, 금일 저가)) / 2 60분봉의 종가(C)가 AA를 크로스업하는 '종목 검색식'을 알고 싶습니다.
프로필 이미지
아폴로85
2019-07-04
351
글번호 130015
종목검색
답변완료

타주기 지표식

항상 감사드립니다 아래 지표식을 타주기에 적용코저합니다 주챠트:크루드 10틱봉 타주기챠트:크루드 50틱봉 ***지표식 *** input : Period(23); var:t1(0),H1(0),H2(0),H3(0),L1(0),L2(0),L3(0); var1 =(AccumN(iff(C-C[1]>0,C-C[1],0),Period)/AccumN(iff(C-C[1]>0,C-C[1],C[1]-C),Period)*100); if var1 <= 25 Then var2 = O; if var1 >= 75 Then var3 = H; var4=(var2+var3)/2 ; plot1(var2,"RSI25",BLUE,def,1.0); plot2(var3,"RSI75",red,def,1.0); plot3(var4,"중심선",pink,def,3.5) ; 감사합니다
프로필 이미지
조민철
2019-07-03
277
글번호 130014
지표
답변완료

문의

전일중심가에서 전일중심가라는 글이나오고 숫자가 나오게 부탁드립니다, 전일고가, 전일 저가도 똑같이 글과 숫자가 나오게 부탁드립니다.글자크기와 색은 따로 정할수 있도록 부탁드립니다.
프로필 이미지
레전드
2019-07-03
273
글번호 130013
지표