커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1374
글번호 230811
답변완료
문의드립니다
틱차트에서 진입후 경과봉수가 몇개이상일때만 진입이나 청산하는 수식 부탁드립니다.
2024-09-20
631
글번호 183604
답변완료
예스트레이더로 종목을 검색하고 싶습니다.
아래 수식으로 종목검색을 하고 싶습니다.
M5=ma(c,5);
M20=ma(c,20);
크로스업=crossup(M5,M20);
HH=highestsince(1,크로스업,H);
H_High=
valuewhen(1,HH==HH(1) && HH>H,HH);
LL=if(M20>L,1,0);
L_sum=sum(LL);
Ls=
L_sum-valuewhen(1,크로스업,L_sum(1));
조건=crossup(c,H_High) && Ls>0;
cnt=countsince(크로스업,조건)==1;
cnt && !cnt(1)
2024-09-20
491
글번호 183603
타요 님에 의해서 삭제되었습니다.
2024-09-20
43
글번호 183602
그냥저냥 님에 의해서 삭제되었습니다.
2024-09-20
50
글번호 183601
답변완료
문의드립니다
수고많으십니다
문의드릴 내용은 볼린져밴드 시스템을 부탁드립니다
매수진입 매도청산 캔들이 하단밴드 아래에서
3개봉이상 만들어지고(최적화 가능하도록부탁드립니다)
하단밴드 상승돌파 한 뒤 하단밴드 위에 4개봉이 (최적화 가능하도록부탁드립니다)
만들어지면 매수진입 매도청산
매수청산; 매수 진입하여 볼밴 상단선보다
20틱이상 상승하면 매수청산(최적화 가능하도록부탁드립니다)
매도진입 매수청산 캔들이 상단밴드 위에서
3개봉이상 만들어지고(최적화 가능하도록부탁드립니다)
상단밴드 하락돌파 한 뒤 상단밴드 아래에서 4개봉이 (최적화 가능하도록부탁드립니다)
만들어지면 매도진입 매수청산
매도청산; 매도 진입하여 볼밴 하단선보다
20틱이상 하락하면 매도청산(최적화 가능하도록부탁드립니다)
이런 수식을 부탁드립니다
감사합니다
2024-09-20
391
글번호 183600
답변완료
문의 드립니다.
수량을 금액으로 변경 부탁드립니다.
Input : Period(5), sigPeriod(3),수량(1);
Var : Ep1(0),EP2(0),DINDEX1(0);
var : JISU1(0), PreJISU1(0);
Var : JISU2(0), PreJISU2(0);
Var : JISU3(0), PreJISU3(0);
Var : dTRIXv(0),dTRIXs(0),dPreTRIXs(0);
var : TRIXv(0),TRIXs(0);
Ep1 = 2/(Period+1);
Ep2 = 2/(sigPeriod+1);
if bdate != bdate[1] then
{
DINDEX1= DINDEX1 + 1;
if DINDEX1 >= 1 Then
PreJISU1 = JISU1[1];
if DINDEX1 >= 2 Then
PreJISU2 = JISU2[1];
if DINDEX1 >= 3 Then
PreJISU3 = JISU3[1];
if DINDEX1 >= 4 Then
dPreTRIXs = dTRIXs[1];
}
if DINDEX1 < 1 then
JISU1 = c;
else
JISU1 = c * EP1 + PreJISU1 * (1-EP1);
if DINDEX1 < 2 then
JISU2 = JISU1 ;
else
JISU2 = JISU1 * EP1 + PreJISU2 * (1-EP1);
if DINDEX1 < 3 then
JISU3 = JISU2 ;
else
JISU3 = JISU2 * EP1 + PreJISU3 * (1-EP1);
dTRIXv = (JISU3 - PreJISU3) / PreJISU3 * 100;
if DINDEX1 < 4 then
dTRIXs = dTRIXv ;
else
dTRIXs = dTRIXv * EP2 + dPreTRIXs * (1-EP2);
TRIXv = TRIX(Period);
TRIXs = ema(TRIXv,sigPeriod);
if dTRIXv > dTRIXs and 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-09-20
416
글번호 183599
답변완료
6중4 두번째 count 제어
첫번째 진입조건 count >= n 이 두번째 진입에도 영향을 미치는데
두번째 진입조건에서는 이를 바꾸고자 합니다.
첫번째 진입 count >= 첫번째n
두번째 진입 count >= 두번째n
input : 횟수(2);
input : d1(0),d2(200),d3(0),d4(12),d5(15000),d6(5000);//진입변수
input : dd1(0),dd2(200),dd3(0),dd4(12),dd5(15000),dd6(5000);//두번째 진입변수
input : 첫번째n(6);
input : 두번째n(4):
이렇게 조절하도록 수식 수정 부탁드립니다.
주말 잘 보내세요.
***************************************************************************
안녕하세요
예스스탁입니다.
input : 횟수(2);
input : d1(0),d2(200),d3(0),d4(12),d5(15000),d6(5000);//진입변수
input : dd1(0),dd2(200),dd3(0),dd4(12),dd5(15000),dd6(5000);//두번째 진입변수
input : n(6);
var : T1(0),entry(0);
if Bdate != Bdate[1] Then
T1 = TotalTrades;
if MarketPosition == 0 Then
entry = TotalTrades-T1;
Else
entry = (TotalTrades-T1)+1;
var : Cond1(False),Cond2(False),Cond3(False),Cond4(False),Cond5(False),Cond6(False);
var : count(0);
if entry == 0 Then
{
Cond1 = data1(c>lowd(0)+d1); //매수조건1
Cond2 = data2(c>lowd(0)+d2); //매수조건2
Cond3 = data3(c>lowd(0)+d3); //매수조건3
Cond4 = data4(c>lowd(0)+d4); //매수조건4
Cond5 = data5(c>lowd(0)+d5); //매수조건5
Cond6 = data6(c<highd(0)-d6); //매수조건6
}
Else
{
Cond1 = data1(c>lowd(0)+dd1); //매수조건1
Cond2 = data2(c>lowd(0)+dd2); //매수조건2
Cond3 = data3(c>lowd(0)+dd3); //매수조건3
Cond4 = data4(c>lowd(0)+dd4); //매수조건4
Cond5 = data5(c>lowd(0)+dd5); //매수조건5
Cond6 = data6(c<highd(0)-dd6); //매수조건6
}
count = 0;
if cond1 == true Then
count = count+1;
if cond2 == true Then
count = count+1;
if cond3 == true Then
count = count+1;
if cond4 == true Then
count = count+1;
if cond5 == true Then
count = count+1;
if cond6 == true Then
count = count+1;
if count >= n and entry < 횟수 then
Buy("b");
즐거운 하루되세요
2024-11-06
483
글번호 183594
답변완료
청산신호 구분
1. if EntryName == "상다" and dayindex == 10 Then ExitLong("상다청산", OnClose, Def, "상다", qua/C, 0);
2. if EntryName == "상다" and dayindex == 10 Then ExitLong("상다청산", OnClose, Def, "상다", qua/C);
3. if EntryName == "상다" and dayindex == 10 Then ExitLong("상다청산", OnClose, Def, "상다");
4. if dayindex == 10 Then ExitLong("상다청산", OnClose, Def, "상다", qua/C, 0);
이 네개의 차이를 간략히 설명 부탁 드립니다.
3번이 경우 청산은 전체 물량이 다 되는건가요 아니면 "상다"에서 사진 물량만 청산되는건가요?
2024-09-20
510
글번호 183579
답변완료
수식 부탁드립니다
아래 수식에서 (기준 < mav) 구간에서의 최고가이은선, 최저가이은선
수식 부탁드립니다
그리고 (기준 < mav) 구간의 박스추세선 부탁합니다
==================================================================
Input : 기준(-10),p(5);
var : Vpower(0),Upper(0),Lower(0),mav(0);
Vpower = upVol/(upVol+downVol)*100-50;
If Vpower > 0 Then
Upper = Vpower;
Else
Upper = 0;
If Vpower <= 0 Then
lower = Vpower;
Else
lower = 0;
mav = ma(Vpower,p);
2024-09-20
538
글번호 183578