커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1382
글번호 230811
답변완료
문의드립니다.
수고많습니다.
선물 2계약 시스템매매에서
진입은
20이평선과 60이평선 중에서 더 높은 가격보다 10틱이상 상승하면 바로 1계약 매수, 그 더 높은 가격보다 위에서 종가가 완성되면 1계약 추가 매수입니다. (추가매수는 더 높은 가격보다만 1틱이라도 더 크면 만족합니다)
청산은
1. 30틱 이상 상승한 후 20틱 밀리면 1계약 청산 또는 진입가에서 30틱 밀리면 1계약 청산
2. 나머지 1개는 20이평선과 60이평선중에 1개선이라도 10틱이상 하락하거나 두 이평선중에서 1틱이라도 이탈로 종가가 완성되면 청산. (이때 2계약이 다 남아 있다면 1계약 청산이 아니라 모두 청산입니다)
매도진입과 청산은 반대입니다.
※ 만일 10틱이상 상승, 하락시 바로 진입이 불가하다면 1계약은 1틱이라도 더 높으면 진입, 나머지 1계약은 10틱이상 더 높으면 진입으로 해주셔도 좋습니다. 즉 10틱이상 더 위에 있으면 2계약 모두 진입이고 5틱만 상승한 종가면 1계약만 진입했다가 이후 10틱이상 올라가는 봉에서 진입되면 됩니다.
두가지 방식 다 가능하다면 둘 다 만들어주셔도 감사하겠습니다.
주석도 조금 부탁드립니다.
미리 노고에 감사드립니다.
2024-08-08
969
글번호 182357
답변완료
문의 드립니다.
아래 식에서 20 120 이평선을 추가하여 정배열 일때만
TRIX 0선아래 크로스 반복 매수 진입하도록 하고자 합니다.(피라미딩 방식)
손절(청산)은 TRIX 0선이 아니라 20 120 이평 정배열에서
주가가 120 이평선을 아래로 이탈할 때 매도 청산완료
부탁드립니다.
Input : Period(5), sigPeriod(10),수량(1);
var : TRIXv(0),TRIXs(0);
TRIXv = TRIX(Period);
TRIXs = ema(TRIXv,sigPeriod);
if C > DayOpen and CrossUp(TRIXv,TRIXs) and TRIXv < 0 Then
Buy("b",OnClose,Def,수량);
if MarketPosition == 1 and CrossDown(c,DayOpen) Then
ExitLong("bx");
2024-08-08
1127
글번호 182356
외국인 님에 의해서 삭제되었습니다.
2024-08-08
2
글번호 182355
답변완료
문의드립니다.
키움 수식인데 변환 좀 부탁드립니다.
제가 하기에는 어려워서요 부탁드립니다.
분봉 일봉 모두 사용 가능용으로 부탁드립니다.
a=adx(11);
b=sum(v*((Pow((C-L),2) - Pow((H-C),2))/(H-L)));
bb=BBandsUp(10,2);
en=EnvelopeUp(10,2);
s=(highest(high,26)+lowest(low,26))/2;
대금=v*(h+l+c+o)/4;
x=sum(v);
y=valuewhen(1,date(1)!=date,x(1));
z=x-y;
전거래량=valuewhen(1,date(1)!=date,z(1));
highest(h,3,1)<=c and ma(c,5)>ma(c,20) and
ma(c,20)>ma(c,60) and bb>en and c>bb and c>en and
a>a(1) and c>s and b>=b(1) and v>v(1)*1.1 and
(대금>2000000000 or sum(v)>전거래량)
2024-08-08
866
글번호 182354
para 님에 의해서 삭제되었습니다.
2024-08-08
5
글번호 182353
답변완료
문의
아래 수식은 b1은 한번만 거래하고, b2거래 부터는 장종료까지 제한없이 계속 반복거래하는 수식입니다.
그리고 반복거래하는 b2에 경과봉1을 필터로 사용하고 있습니다.
요청하는 내용은 다음과 같습니다.
b2거래가 1승을 할 때는 경과봉2(추가) 만큼 간격을 좁히고 싶습니다.
그러다 1패를 하면 경과봉1이 재적용되고 그러다 1승을 하면 경과봉2가 다시 적용됩니다.
이 내용을 수식에 반영해 주십시요.
항상 고맙습니다.
*******************************************************************************
input : 경과봉1(100)
if 진입수식1 then
buy("b1");
if (TotalTrades == 0 or (TotalTrades >= 1 and BarsSinceExit(1) > 경과봉1)) and 진입수식2 then
buy("b2");
2024-08-08
831
글번호 182349
답변완료
직전 저점, 직전 고점
다음의 지표 값을 부탁 드립니다.
1. 최근 발생한 저점의 값과 직전에 발생한 저점의 값을 구하는 지표 식.
2. 최근 발생한 고점의 값과 직전에 발생한 고점을 값을 구하는 지표 식.
2024-08-08
1039
글번호 182347
답변완료
변환 부탁드립니다.
//@version=4
// This source code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/
// © colinmck
study("QQE signals", overlay=true)
RSI_Period = input(14, title='RSI Length')
SF = input(5, title='RSI Smoothing')
QQE = input(4.238, title='Fast QQE Factor')
ThreshHold = input(10, title="Thresh-hold")
src = close
Wilders_Period = RSI_Period * 2 - 1
Rsi = rsi(src, RSI_Period)
RsiMa = ema(Rsi, SF)
AtrRsi = abs(RsiMa[1] - RsiMa)
MaAtrRsi = ema(AtrRsi, Wilders_Period)
dar = ema(MaAtrRsi, Wilders_Period) * QQE
longband = 0.0
shortband = 0.0
trend = 0
DeltaFastAtrRsi = dar
RSIndex = RsiMa
newshortband = RSIndex + DeltaFastAtrRsi
newlongband = RSIndex - DeltaFastAtrRsi
longband := RSIndex[1] > longband[1] and RSIndex > longband[1] ? max(longband[1], newlongband) : newlongband
shortband := RSIndex[1] < shortband[1] and RSIndex < shortband[1] ? min(shortband[1], newshortband) : newshortband
cross_1 = cross(longband[1], RSIndex)
trend := cross(RSIndex, shortband[1]) ? 1 : cross_1 ? -1 : nz(trend[1], 1)
FastAtrRsiTL = trend == 1 ? longband : shortband
// Find all the QQE Crosses
QQExlong = 0
QQExlong := nz(QQExlong[1])
QQExshort = 0
QQExshort := nz(QQExshort[1])
QQExlong := FastAtrRsiTL < RSIndex ? QQExlong + 1 : 0
QQExshort := FastAtrRsiTL > RSIndex ? QQExshort + 1 : 0
//Conditions
qqeLong = QQExlong == 1 ? FastAtrRsiTL[1] - 50 : na
qqeShort = QQExshort == 1 ? FastAtrRsiTL[1] - 50 : na
// Plotting
plotshape(qqeLong, title="QQE long", text="Long", textcolor=color.white, style=shape.labelup, location=location.belowbar, color=color.green, transp=0, size=size.tiny)
plotshape(qqeShort, title="QQE short", text="Short", textcolor=color.white, style=shape.labeldown, location=location.abovebar, color=color.red, transp=0, size=size.tiny)
// Alerts
alertcondition(qqeLong, title="Long", message="Long")
alertcondition(qqeShort, title="Short", message="Short")
2024-08-08
1035
글번호 182346
우유 님에 의해서 삭제되었습니다.
2024-08-08
155
글번호 182345