커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7818
글번호 230811
답변완료
6402 재질문입니다.
식을 잘못올렸네요...지송^^;
8줄과 16줄에 3.1에서 오류가 나네요... 다시한번 수정부탁드립니다...
input:좌(6),우(5);
var:j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),고점표시(0),저점표시(0);
array:고[10](0),저[10](0),고bar[10](0),저bar[10](0);
#==============================================================================#
# 변곡점
#==============================================================================#
if highest(h,좌)==h and iff(예비고bar<우,예비고<h,1) then
{
예비고=h;
예비고bar=0;
}
else
예비고bar=예비고bar+1;
if lowest(l,좌)==l and iff(예비저bar<우,예비저>l,1) then
{
예비저=l;
예비저bar=0;
}
else
예비저bar=예비저bar+1;
고점표시=(o[우]+c[우])/2;
저점표시=(o[우]+c[우])/2;
for j=0 to 9 begin
고bar[j]=고bar[j]+1;
저bar[j]=저bar[j]+1;
end;
if 예비고bar==우 then
{
if 저bar[0]>고bar[0] then
{
if 고[0]<예비고 then
{
고점표시=예비고*1.0005;
고[0]=예비고;
고bar[0]=예비고bar;
}
}
else
{
for j=9 downto 1 begin
고[j]=고[j-1];
고bar[j]=고bar[j-1];
end;
고점표시=예비고*1.0005;
고[0]=예비고;
고bar[0]=예비고bar;
}
}
if 예비저bar==우 then
{
if 고bar[0]>저bar[0] then
{
if 저[0]>예비저 then
{
저점표시=예비저*0.9995;
저[0]=예비저;
저bar[0]=예비저bar;
}
}
else
{
for j=9 downto 1 begin
저[j]=저[j-1];
저bar[j]=저bar[j-1];
end;
저점표시=예비저*0.9995;
저[0]=예비저;
저bar[0]=예비저bar;
}
}
if 고점표시 > h[우] then plot1(고점표시,"전고점",red);
if 저점표시 < l[우] then plot2(저점표시,"전저점",blue);
if 고bar[0]==우 then plot3(고[0],"연결선",green);
if 저bar[0]==우 then plot3(저[0],"연결선",green);
2007-08-20
1037
글번호 13364
답변완료
질문입니다.
아래의 식은 직전N일간의 VALUE값에 대한 최대와 최소값에 관한함수식입니다.
이식을 토대로 M일전부터 직전N일간의 VALUE값에 대한 최대,최소값에 관한 함수식을
부탁드립니다.
수고하세요^^
#최대값
input : value(numeric),N(numeric);
array : Hval[11](0);
var : cnt(0),count(0);
if date != date[1] then{
Hval[0] = value;
for cnt = 1 to N-1{
Hval[cnt] = Hval[cnt-1][1];
}
}
if value > Hval[0] then{
Hval[0] = value;
}
var1 = Hval[0];
for count = 0 to N-1{
if Hval[count] > var1 then
var1 = Hval[count];
}
INMAXN = var1;
#최소값
input : value(numeric),N(numeric);
array : Lval[11](0);
var : cnt(0),count(0);
if date != date[1] then{
Lval[0] = value;
for cnt = 1 to N-1{
Lval[cnt] = Lval[cnt-1][1];
}
}
if value < Lval[0] then{
Lval[0] = value;
}
var1 = Lval[0];
for count = 0 to N-1{
if Lval[count] < var1 then
var1 = Lval[count];
}
INMINN = var1;
2007-08-20
1177
글번호 13359
답변완료
6402 재질문입니다.
아래의 지표는 수식지왕님이 작성한 SWING지표입니다..
3.1버전에 적용가능하게 변경부탁드립니다...IFF 구문이 틀린것으로 나옵니다.
앞에서 답변해주신 내용을 잘 모르겠네요...^^;지송
input : left(5),right(5);
var: j(0),예비고(0),예비저(0),예비고bar(0),예비저bar(0),고점표시(0),저점표시(0);
Array: 고[10](0),저[10](0),고bar[10](0),저bar[10](0);
if highest(h[1],left)<h Then {
예비고 = h;
예비고bar = 0;}
Else
예비고bar =예비고bar+1;
if lowest(l[1],left)>l Then {
예비저 = l;
예비저bar = 0;}
Else
예비저bar =예비저bar+1;
if 예비고bar==right and highest(h,right)<h[right] then {
고[1]=예비고;
고bar[1] =예비고bar;
}
if 예비저bar==right and lowest(l,right)>l[right] then {
저[1]=예비저;
저bar[1] =예비저bar;
}
if highest(h[1],left)<h then {
예비고 = h;
예비고bar=0;}
else
예비고bar=예비고bar+1;
if lowest(l[1],left)>l then {
예비저 = l;
예비저bar=0;}
else
예비저bar=예비저bar+1;
for j=1 to 9 {
고bar[j] =고bar[j]+1;
저bar[j] =저bar[j]+1;
}
if 예비고bar==right and highest(h,right)<h[right] then {
for j=9 downto 2 {
고[j]=고[j-1];
고bar[j] =고bar[j-1];
}
고[1] = 예비고
고bar[1]=예비고bar; }
if 예비저bar==right and lowest(l,right)>l[right] then {
for j=9 downto 2 {
저[j]=저[j-1];
저bar[j] =저bar[j-1];
}
저[1] = 예비저
저bar[1]=예비저bar; }
if 저bar[1] > 고bar[2] then {
for j =9 downto 2{
저[j] = 저[j-1];
저bar[j] =저bar[j-1];
}
미완성=0;
for j =고bar[1] +1 to 고bar[2]-1{
if 미완성 ==0 or 미완성>l[j] then {
미완성=l[j];
미완성bar=j;
}
}
저[1] = 미완성;
저bar[1] =미완성bar;
}
}
if 예비저bar==right and lowest(l,right)>=l[right] then {
for j=9 downto 2 {
저[j]=저[j-1];
저bar[j] =저bar[j-1];
}
저점표시 =예비저- x;
저[1] = 예비저
저bar[1]=예비저bar;
if 고bar[1] > 저bar[2] then {
for j =9 downto 2{
고[j] = 고[j-1];
고bar[j] =고bar[j-1];
}
미완성=0;
for j =저bar[1] +1 to 저bar[2]-1{
if 미완성 < h[j] then {
미완성=h[j];
미완성bar=j;
}
}
고[1] = 미완성;
고bar[1] =미완성bar;
}
if 고점표시>h[right] then plot1(고점표시,"전고점",RED);
if 저점표시<l[right] then plot2(저점표시,"전저점",BLUE);
2007-08-20
1217
글번호 13358
답변완료
상한가터치후 이탈된 종목검색
3일전봉이 당일 상한가를 터치한후 상한가에서 내려온(이탈)종목을 검색하는 식을 구합니다.
2007-08-20
1166
글번호 13357
답변완료
질문입니다.
현재 3.0버전에서는 아래의 iff구문이 검증되는데 3.1베타버전에서는 오류가 생기네요
이걸 어떻게 바꿔야하는지요?
iff(예비저bar<우,예비저>l,1)
2007-08-20
981
글번호 13352
회원 님에 의해서 삭제되었습니다.
2007-08-20
0
글번호 13351
답변완료
웹마스터 메일 확인바랍니다
안녕하세요 웝마스터메일로 질문 드렸습니다
확인하시고 답변 부탁합니다 감사합니다
2007-08-19
990
글번호 13350
답변완료
문의 드립니다.
plot1(iff(stime==110000 or stime==120000 or stime==13000,DayOpen(0),0));
이걸 가격에 표시하면 화면이 찌그러져 나오는데 정상적으로 나오게 부탁 드립니다.
2007-08-18
1081
글번호 13349
답변완료
수식문의
수식작성시
예를 들어 A라는 조건을 만족하면 "1" 그렇치 않으면 "-1"
B라는 조건을 만족하면 "1" 그렇치 않으면 "-1"
C라는 조건을 만족하면 "1" 그렇치 않으면 "-1" 값을 각각
부여한후 A,B,C조건에서 발생되는 값들의 합이 2이상이면 매수
합이 "-2" 이하이면 매도라슨 수식을 작성시 현재(금일)의 합의 결과치를
예를 들면 1또는 "-1"또는 0 등의 합산값을 식이 적용된 챠트상에서
볼수 있는 방법과 현재의 결과치를 알수 있는 방법에 대해
조언 부탁 드립니다.
2007-08-17
1034
글번호 13348