커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3346
글번호 230811
답변완료
배열 값을 모두 더하는 함수
예를 들어서 인덱스가 30짜리인 배열이 있다면, 배열 안의 값을 한 번에 더하는 함수명이 궁금합니다.
혹시 없다면 arr11이라는 배열을 가지고 수식을 만들어 주세요.
감사합니다.
2020-06-19
2167
글번호 139965
답변완료
지표값 계산시 소수를 사용할 수 없나요..?
지표 계산값이 소수로 나와야 하는데, 로그를 찍어보면 정수로만 출력되어
제대로 된 신호를 포착할 수 없습니다.
혹시 소수까지 사용할 수 있는 방법이 따로 있나요..?
2020-06-19
2008
글번호 139964
답변완료
특정날자와 시간에 검색하기 위한 식이 먹히질 않네요
아침 8시 49분에 어제 증시 시간내에 검색 했는데 결과값이 안나오네요
input : nday(20200618),ntime(152000);
if sdate != sdate[1] Then
Condition1 = false;
if sdate == nday and stime == ntime and var2 > var3 and
(close - DayClose(1))*100/DayClose(1) > 4
Then
{
Condition1 = true;
var4 = (close - DayClose(1))*100/DayClose(1);
}
if Condition1 == true Then
find(var4);
2020-06-19
2015
글번호 139963
답변완료
부탁드립니다.
3분봉에서 5평선과 20평선이 골든크로스가 날 때 1계약으로 매수진입하고,
데드 크로스가 나면 매수 진입을 청산하고 1계약 매도진입 (총 2계약 매도진입)
다음에 골든 크로스가 나면 매도 진입을 청산하고 1계약 매수진입 (총 2계약 매수진입)
이렇게 진입할 수 있게 만들어주실 수 있을까요?
2020-06-19
2124
글번호 139962
답변완료
함수요청 드립니다
코스피200 선물 매매 테스트를 위한 함수 요청드립니다
전일 고가 - 전일 저가==Range1
전일 저가 - 전일 고가==Range2
금일 시가 + (Range1)= A
금일 시가 + (Range2)= B
매수 = 당일 장중가격 A 상향 돌파
매수 청산= 3:00
매도 = 당일 장중가격 B 하향 돌파
매도 청산= 3:00
손절= -1% 설정
말이 되는지 모르겠네요 ^^;;
2020-06-19
2045
글번호 139961
답변완료
부탁드립니다.
$,안녕하세요
1,아래식에서 파동추세선이 그려진 직후 파동추세선이 그려진 완성봉에 Text가 즉시
출력되도록 수정부탁드립니다.
2,최근 2개파동의 각각중심선을 다음파동전까지 오른쪽그리기 하고싶습니다.
도움부탁드립니다.
input: period1(60),period2(20),period3(5), 선두께(5),상승색(YELLOW),하락색(cyan);
Var:j1(0),J2(0),J3(0),T1(0),T2(0),T3(0);
Var: date11(0),time11(0),date12(0),time12(0);
Var: TL1(0), TL2(0),TL3(0),Tx(0),Tx1(0);
Array:HiVal1[20](0),LoVal1[20](0),HiBar1[20](0),LoBar1[20](0);
Array:HiVal2[20](0),LoVal2[20](0),HiBar2[20](0),LoBar2[20](0);
Array:HiVal3[20](0),LoVal3[20](0),HiBar3[20](0),LoBar3[20](0);
Array:r[7](0),fr[7](0);
For j1 = 0 To 19
{
HiBar1[j1] = HiBar1[j1] + 1;
LoBar1[j1] = LoBar1[j1] + 1;
}
if crossup(c,highest(c,Period1)[1]) Then
T1 = 1;
if CrossDown(c,Lowest(c,Period1)[1]) Then
T1 = -1;
If T1 == -1 Then
{
If T1[1] != -1 Then
{
For j1 = 18 DownTo 0
{
LoVal1[j1+1] = LoVal1[j1];
LoBar1[j1+1] = LoBar1[j1];
}
LoVal1[0] = close;
LoBar1[0] = 0;
date11 = date[HiBar1[0]];
time11 = stime[HiBar1[0]];
Value11 = HiVal1[0];
date12 = date[LoBar1[0]];
time12 = stime[LoBar1[0]];
Value12 = LoVal1[0];
TL1 = TL_New(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,하락색);
Tx = Text_New(date11,time11,Value11,"▼");
Text_SetColor(Tx,blue);
Text_SetStyle(Tx,2,1);
Text_SetSize(tx,11);
tx = Text_New(date11,time11,Value11,NumToStr(value11,2)+NewLine);
Text_SetStyle(tx,2,1);
Text_SetSize(tx,11);
}
If LoVal1[0] > close Then
{
LoVal1[0] = close;
LoBar1[0] = 0;
date12 = date[LoBar1[0]];
time12 = stime[LoBar1[0]];
Value12 = LoVal1[0];
TL_SetEnd(TL1, date12,time12,Value12);
}
}
If T1 == 1 Then
{
If T1[1] != 1 Then
{
For j1 = 18 DownTo 0
{
HiVal1[j1+1] = HiVal1[j1];
HiBar1[j1+1] = HiBar1[j1];
}
HiVal1[0] = close;
HiBar1[0] = 0;
date11 = date[LoBar1[0]];
time11 = stime[LoBar1[0]];
Value11 = LoVal1[0];
date12 = date[HiBar1[0]];
time12 = stime[HiBar1[0]];
Value12 = HiVal1[0];
TL1 = TL_New(date11,time11,Value11,date12,time12,Value12);
TL_SetColor(TL1,상승색);
Tx1 = Text_New(date11,time11,Value11,"▲");
Text_SetColor(Tx1,red);
Text_SetStyle(Tx1,2,5);
Text_SetSize(tx1,11);
tx = Text_New(date11,time11,Value11,NewLine+NumToStr(value11,2));
Text_SetStyle(tx,2,0);
Text_SetSize(tx,11);
}
If HiVal1[0] < close Then
{
HiVal1[0] = close;
HiBar1[0] = 0;
date12 = date[HiBar1[0]];
time12 = stime[HiBar1[0]];
Value12 = HiVal1[0];
TL_SetEnd(TL1, date12,time12,Value12);
}
}
TL_SetSize(tL1,선두께);
2020-06-19
2083
글번호 139960
답변완료
68005 관련 추가 문의드립니다.
안녕하세요
항상 친절한 도움에 감사한 마음입니다.
68005 관련 추가 문의드립니다.
(5봉경과 수식 외에) 추가로, 진입후 시간이 5분경과 해도 청산 안되는 경우에도
익절/손절틱수를 변경하는 수식을 부탁드리겠습니다.
===========================================================
아래의 샘플 수식을 300틱봉에서 돌리고 있습니다.
아래의 식에,
진입한 후, 진입봉이후 5봉이내 또는 5분이내 에서 수익 청산이 안되는 경우
익절값과 손절값을 아래처럼 변경하고 싶은데요...
각 각 수식 가능할런지요 ?
1) 5봉 경과
2) 5분 경과
익절 : 10틱 --> 6틱
손절 : 13틱 --> 7틱
// --------------------------------------------
input : Period(20), 익절(10), 손절(13);
var1 = highest(H,Period)[1];
var2 = Lowest(L,Period)[1];
if CrossUp(C, var1) Then
buy();
if CrossDown(C, var2) Then
sell();
SetStopLoss(PriceScale*손절,PointStop);
SetStopProfittarget(PriceScale*익절,PointStop);
// --------------------------------------------
감사합니다.
2020-06-18
2022
글번호 139955
답변완료
함수요청
안녕하세요?
아래 전략에 대해 스크립트 작성 요청드립니다.
나스닥 선물지수 60분봉, 20ma로 거래를 하고자 합니다.
1. 매수 진입(가and나and다)
가. 직전 5개 봉의 20ma의 기울기가 연속적으로 상승 중
나. 직전 5개 봉이 20ma 아래 위치
나. 현재봉이 20ma 상향돌파 완성시 익봉에 시가 진입
2. 매도 진입(가and나and다)
가. 직전 5개 봉의 20ma의 기울기가 연속적으로 하락 중
나. 직전 5개 봉이 20ma 위에 위치
나. 현재봉이 20ma 하향이탈 완성시 익봉에 시가 진입
2020-06-18
1890
글번호 139948
답변완료
어제의 가격들과 오늘의 종가 비교하는 for, if문
주가의 움직임 영역을 아래처럼 6가지로 나누고,
1/2번, 2/3번, 4/5번, 5/6번 영역 사이의 경계를 Pivot Point라고 해서 뒤에 PP를 붙였습니다.
State No 1.상승추세(Uptrend)
---------------------------- UptrendPP (종가가 이 위로 가면 그 종가는 상승추세에 기입)
State No 2.진짜반등(RealRally)
---------------------------- RealRallyPP (종가가 이 위로 가면 그 종가는 진짜반등에 기입)
State No 3.가짜반등(FakeRally)
---------------------------- (종가가 3번/4번 영역에 있으면 그 종가는 가짜반등/가짜조정에 기입)
State No 4.가짜조정(FakeReact)
---------------------------- RealReactPP (종가가 이 아래로 가면 그 종가를 진짜조정에 기입)
State No 5.진짜조정(RealReact)
---------------------------- DntrendPP (종가가 이 아래로 가면 그 종가를 하락추세에 기입)
State No 6.하락추세(Dntrend)
제가 만들고자 하는 수식은 설정된 기간동안 매일 종가를 추적하여,
아래의 내용을 비교해서 오늘의 종가가 6개 영역중 어디에 해당되는지 판단하는 것입니다.
- 어제의 종가가 어느 영역에 머물렀는가
- 오늘의 종가 vs 어제의 종가 크기 비교
- 오늘의 종가 vs 어제의 Pivot Point들과 비교
-
어제의 종가가 1번 영역(상승추세) 일때만 좀 봐주신다면 나머지 2/3/4/5/6번 영역일떄의 if문은 제가 작성해보도록 하겠습니다.
제가 우선 다른 프로그램에서 쓰는 수식 변형해서 만들어봤는데 F4 눌러서 검증은 마쳤습니다만,
오늘의 종가가 어느 영역에 있는지 결과값은 나오지 않는 상황입니다.
----------------------------------------------------------------------------------
var : i(0),stateno(0),
uptrend(0),realrally(0),fakerally(0),fakereact(0),realreact(0),dntrend(0),
UpTrendPP(0),NatRallyPP(0),NatReactPP(0),DnTrendPP(0);
For i = index-1 downto 0 // 어제 종가가 어느 영역에 머물렀는지 기준으로 반복해야하므로 for문 사용
{
if i==index-1 then // 시작날짜의 경우 전날에 대한 데이터가 없으므로 1번영역 라고 가정하고 모든 변수에 우선 첫날 종가입력
{
StateNo[i]==1;
UpTrend[i]== C[i];
RealRally[i]== C[i];
FakeRally[i]== C[i];
FakeReact[i]== C[i];
RealReact[i]== c[i];
DnTrend[i]==C[i];
UpTrendPP[i]==C[i];
RealRallyPP[i]==C[i];
RealReactPP[i]==C[i];
DnTrendPP[i]==C[i];
}
else // 시작날짜가 아닌경우 전날의 종가가 어느 영역이었는지 기준으로 if문 반복
{
if(StateNo[i+1]==1) then // 전날의 종가가 1번 영역이었다면 이걸 실행. 2/3/4/5/6번 영역이었을때의 조건문은 각각 있음. 여기선 예시로 1번 영역일때만 사용.
{
if(C[i]>=C[i+1]) then // 오늘의 종가가 어제 종가보다 크거나 같은가?
{
if(C[i]>UpTrend[i+1]) then // 그렇다면 오늘의 종가가 어제의 상승추세에 입력된 가격보다 큰가?
{
StateNo[i]==1; // 그렇다면 오늘의 종가는 1번 영역에 있다고 판단
UpTrend[i]==C[i]; // 오늘의 종가를 상승추세 영역에 기입
}
그 다음날은 또 어제의 종가가 어느 영역에 있는지 판단하는것부터 시작 반복...
2020-06-18
2109
글번호 139941