커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1362
글번호 230811
하루삼프로 님에 의해서 삭제되었습니다.
2024-11-07
51
글번호 185044
묻어가는자 님에 의해서 삭제되었습니다.
2024-11-07
11
글번호 185042
답변완료
질문드리겠습니다
지난 답변 감사드립니다 적용을 해봤는데요
질문 몇 가지 드리고 싶습니다
질문1)
분봉차트에 분-일봉간 크로스업 다운 할때요
마지막줄에 PLOT18 처럼 작성하면 골든 할때 분봉상 H 값이 불러지는게 맞는거죠?~
VAR : 분봉기간(0),일봉기간(0);
var : sum2(0);
분봉기간=60;
일봉기간=20;
m1 = ma(C,분봉기간);
sum2 = 0;
For cnt = 0 to 일봉기간-1
{
sum2 = sum2 + DayClose(cnt);
}
m2 = sum2/일봉기간;
var11 = 0;
if CrossUp(m1,m2) Then
{
var11 = H;
VAR14= 1;
}
if CrossDown(m1,m2) Then
var14 = -1;
IF VAR11>0 THEN Plot18(var11,"MM",OrangE,DeF,1);
질문2) 질문1 내용을 사용자함수로 알려주셨는데요
일단 마지막줄에서
if updown == -1 and CrossDown(m1,m2) Then
MDAYCROSS = true;
MDAYCROSS=FALSE; 로 해야 맞는거죠?
아래는 알려주신 수식입니다
input : MINPERIOD(Numeric),DAYPERIOD(Numeric),updown(Numeric);
var : cnt(0);
var : m1(0),sum2(0),m2(0);
m1 = ma(C,MINPERIOD);
sum2 = 0;
For cnt = 0 to DAYPERIOD-1
{
sum2 = sum2 + DayClose(cnt);
}
m2 = sum2/DAYPERIOD;
MDAYCROSS = False;
if updown == 1 and CrossUp(m1,m2) Then
MDAYCROSS = true;
if updown == -1 and CrossDown(m1,m2) Then
MDAYCROSS = true;
그리고 수식에서 이 함수를 사용해서 H 값을 나타내려고 하는데요
CONDITION1=MDAYCROSS(60,20,1);
IF CONDITION1=TRUE THEN Plot17(H,"MDAY",OrangE,DeF,1);
이렇게 작성하면 H가 모든 봉에서 나오는데 질문1처럼 업할때만 H가 나오게 하려면 어떻게 작성해야할까요
감사합니다
2024-11-07
610
글번호 185041
답변완료
지표 입니다
일목균형표처럼 부탁합니다
정배열상승
A=EAVG(C,200);
A1=EAVG(C,50);
A2=EAVG(C,20);
bearTrend = A > A1 and A1 > A2; // Bearish trend
bullTrend = A < A1 and A1 < A2; // Bullish trend
if(bullTrend, A,0)
정배열하락
A=EAVG(C,200);
A1=EAVG(C,50);
A2=EAVG(C,20);
bearTrend = A > A1 and A1 > A2; // Bearish trend
bullTrend = A < A1 and A1 < A2; // Bullish trend
if(bearTrend , A,0)
20
EAVG(C,20);
핑크색상으로
50
EAVG(C,50);
스카이블루색상으로
2024-11-06
711
글번호 185040
답변완료
부탁합니다
강조 색상은 진한노랑색 굵고 길게 부탁합니다
L기간 25
R기간 25
고점조건 = HIGHEST(HIGH, L기간+R기간+1) == HIGH(R기간);
고점값 = VALUEWHEN(1, 고점조건, HIGH(R기간), -R기간);
H연장 = Valuewhen(1, 고점조건, H(R기간),1);
CROSSUP(C, H연장)
2024-11-06
850
글번호 185039
답변완료
스토케스틱 색상 문의
스토케스틱 오실레이터 색상의 변화 기준을 첨부된 그림처럼 이전 값으로 하고싶습니다.
수식을 어떻게 추가하면 될까요? 부탁드립니다.
input : sto1(12),sto2(26),sto3(9);
var : Stochasticsfast(0),Stochasticsslow(0),StochasticssOsc(0);
StochasticsFast = (C-lowest(L,sto1))/(highest(H,sto1)-lowest(L,sto1))*100;
Stochasticsslow = AccumN(C-lowest(L,sto1),sto2)/AccumN((highest(H,sto1)-lowest(L,sto1)),sto2)* 100;
StochasticssOsc = ema(Stochasticsfast,sto2)-ema(Stochasticsslow,sto3);
if StochasticssOsc > 0 Then
plot1(StochasticssOsc,"osc",RED);
Else
plot1(StochasticssOsc,"osc",BLUE);
PlotBaseLine1(0);
2024-11-06
895
글번호 185038
답변완료
지표 수식작성 부탁드리겠습니다
저번에 순매수체결 최소,최저 수평선 지표수식은 정말 감사했습니다
아주 요긴하게 잘 쓰고 있습니다
이번에도 좀 성가신 부탁 드립니다.
이해가 쉽도록 첨부파일에 그림 올렸습니다
30초봉 캔들차입니다
참조지표로 [프로그램 순매수 수량]을 아래 차트에 올렸습니다
기본차트가 30초봉 차트이니 일간의 프로그램 순매수수량이
맨마지막 일봉인 당일 순매수 수량이 -1만주로 30초차트 첫시작에 찍히는데요
첫번째는 저 맨마지막 봉 하나만 어떻게 차트 맨 오른쪽 종가캔들 위치로 옮길 수 없나요?
그리고 옮긴 캔들이 결국 막대그래프로 표현될텐데 굵기도 눈에 확 띄게 좀더 굵게 했으면 좋겠습니다
아니면, -1만주라는 당일 수치를 수평선처럼 차트에 삽입할 수 없는지요?
이것도 불가능하다면 당일프로그램 순매수량의 최대치나 순매도량의 최대치라도 수평선으로 표시해 볼 순 없는지요?
input: 막대굵기 (1);
var : Data2(c),hh(0),ll(0),hh1(0),ll1(0);
if Index == 0 Then
{
hh = Data2;
ll = Data2;
}
Else
{
if Data2 > HH Then
hh = Data2;
if Data2 < LL Then
LL = Data2;
}
PlotBaseLine1(0, "기준선0");
Plot2(hh1);
plot3(ll1);
저번에 만들어주신 순매수체결량 최고최저 수평선 수식지표를 바꿔치기 해봤는데 오류라고 나오네요
input: 막대굵기 (1);
var : tl1(0),tl2(0);
var1 = max(Data2(c),data2(h));
var2 = min(Data2(c),Data2(l));
var3 = highest(var1,0);
var4 = Lowest(var2,0);
TL_Delete(tl1);
TL_Delete(tl2);
if var3 > 0 then{
tl1 = TL_New(sdate[1],stime[1],var3,sdate,stime,var3);
tl2 = TL_New(sdate[1],stime[1],var4,sdate,stime,var4);
TL_SetExtRight(tl1,true);
TL_SetExtRight(tl2,true);
TL_SetExtleft(tl1,true);
TL_SetExtleft(tl2,true);
TL_SetColor(tl1,MAGENTA);
TL_SetColor(tl2,blue);
}
plot1(var3[0],"최고가",MAGENTA);
plot2(var4[0],"최저가",blue);
게시판을 검색해서 비슷한거 찾아서 바뀌치기 했는데 이건 검증은 통과하는데 적용시키면 맹탕으로 아무것도 안나옵니다.
마지막으로 아마 안되는 걸고 알고 있는데요, accum 뭐시기라는 함수로 당일치 누적그래프로 표현할 수는 없는지요
참고로 아래쪽 차트의 주황색이 당일누적거래량인 DayVolume의 *0.2의 역상인데 저것처럼 말이죠.
늘 성실하게 답변해 주셔서 감사드리구요 제가 부탁드린것 그 어느것도 모두 불가능하다면
원래 기능대로 9시 정각에 표시되는 막대그래프 하나의 굵기만이라도 확 크게 키웠으면 좋겠습니다.
input: 막대굵기 (9);
var1=data2(c);
if sDate != sDate[1] Then
if var1>0 Then
Plot1(var1, "프로", Red);
Else
Plot1(var1,"프로", Blue);
plotbaseline1(0,"0선", Black);
굵기 변경한다고 비슷한 수식에다 바꿔치기 해봤는데 잘 안되네요
게시판을 검색해보면 종목별 프로그램 순매수량을
분봉차트에 표시되게끔 원하시는 분들도 더러 있던데
당일 장중 최대치만이라도 수평선으로 표시되게끔 되면 정말 좋겠습니다
꼬옥 좀 부탁드립니다.
제 글에 나오는 3개의 수식지표를 보시면 아시겠지만
무턱대고 만들어달라가 아니라
프로그래밍 언어를 모르니 게시판을 계속 검색해보며
비슷한거 골라서 막무가내로 바꿔치기하는 수준이지만
그래도 노력은 해보고 이렇게 부탁드리는 겁니다
수고하십시오.
2024-11-07
933
글번호 185037
답변완료
매수신호 반대 매도 신호 시스널 생성
아래는 매수 시그널과 청산시스널만 나오는데 매수 경우 매수 신호와 매도 청산신호가 같이 나오고 매도 경우 매도진입 신호와 기존 매수 청산신호가 같이 나오게 시스템을 만들어주시면 감사합니다. 혼자 하다가 않되네요 이게 다른 무슨 설정이 않되서 그러면 지도해 주시면 감사합니다.
var : t(0);
if t <= 0 and c>o and c> highest(c,10)[1] and ma(c,5)>ma(c,5)[1] and c>ma(c,5) Then
{
t = 1;
Buy("Buy Signal");
}
if t >= 0 and c<o and c< lowest(c,10)[1] and ma(c,5)<ma(c,5)[1] and c<ma(c,5) Then
{
t = -1;
Sell("Sell Signal");
}
2024-11-07
774
글번호 185036
답변완료
종목검색 식 부탁 드립니다.
* 입력 : 기간, 상승률 일때,
* 기간내 최저 종가와 죄고 종가의 누적상승률이 지정한 상승률 이상인 경우가,
1회 이상 발생한 종목을 검색하고자 합니다.
누적상승률은 저점이 갱신될 때 마다 그 종가로부터 다시 계산 되어야 합니다.
검색식 부탁 드립니다. 감사합니다.
2024-11-06
761
글번호 185035