커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1509
글번호 230811
답변완료
안녕하세요 종합차트에 검색신호에관해 질문드립니다^^
예스트레이더 종합차트에서 검색신호속성에 색깔을 변경해도 변경 적용이 되질안는데요
혹시 어떻게 바꾸는지 알수 있을까요?^^
2023-08-31
1317
글번호 172034
답변완료
키움수식 예스랭귀지 전환 문의드립니다.
안녕하세요.
평균가격에 평균거래대금을 곱해서 더한 뒤 상장후 총거래량으로 나눈 값을 구해서
그 값을 돌파하는 종목을 검색하고 싶습니다.
감사합니다.
AA= (H+L+C)/3; //평균가격
BB=AA*V; //평균거래대금
X1=Sum(BB);
X2=Sum(V);
X1/X2; //평균가격
2023-08-31
1324
글번호 172033
답변완료
문의드립니다.
종목검색식을 부탁드립니다.
HH = HighestSince(1, date!=date(1), H);
K = Valuewhen(1, date!=date(1), HH(1));
A =
CountSince(
CrossDown(Max(C,O), K),
CrossUp(Min(C,O), K)) == 1;
Dn_date = Valuewhen(1,CrossDown(Max(C,O), K),date);
Up_date = Valuewhen(1,CrossUp(Min(C,O), K), date);
A && !A(1) && Dn_date==Up_date
2023-08-31
1228
글번호 172032
답변완료
문의 드립니다
1.
Inputs: PercentRLen(10), OverSold(10), OverBought(90), Trigger(62);
Variables: PcntR(0), AvgValue(0), Setup1(False), Setup2(False);
PcntR = PercentR(PercentRLen);
AvgValue = MA(Close, PercentRLen);
If PcntR < OverSold Then
Setup1 = True;
If PcntR > OverBought Then
Setup1 = False;
If PcntR > OverBought Then
Setup2 = True;
If PcntR < OverSold Then
Setup2 = False;
If Setup1 AND AvgValue > AvgValue[1] AND Crossup(PcntR,Trigger) Then Begin
Setup1 = False;
Buy ("%R_LE");
End;
If Setup2 AND AvgValue < AvgValue[1] AND CrossDown(PcntR, Trigger) Then Begin
Setup2 = False;
ExitLong ("%R_SE");
End;
2.
Inputs: PercentRLen(10), OverSold(10), OverBought(90), Trigger(62);
Variables: PcntR(0), AvgValue(0), Setup1(False), Setup2(False);
PcntR = PercentR(PercentRLen);
AvgValue = MA(Close, PercentRLen);
If PcntR < OverSold Then
Setup1 = True;
If PcntR > OverBought Then
Setup1 = False;
If PcntR > OverBought Then
Setup2 = True;
If PcntR < OverSold Then
Setup2 = False;
If Setup1 AND AvgValue > AvgValue[1] AND Crossup(PcntR,Trigger) Then Begin
Setup1 = False;
ExitShort ("%R_LE");
End;
If Setup2 AND AvgValue < AvgValue[1] AND CrossDown(PcntR, Trigger) Then Begin
Setup2 = False;
Sell ("%R_SE");
End;
------------------
1번 수식어에서 40선 아래에서 매수는 매도 전환
2번 수식어에서 40선 위에서 매도신호는 매수전환의
추가 수식어를 부탁합니다.
3.
input : StartTime(160000),EndTime(50000),진입횟수(10);
input : 익절틱수(400),손절틱수(50);
Inputs: Length(15), Pval(0.05);
var : Tcond(False),entry(0);
Variables: Mom(0);
IF Endtime > starttime Then
SetStopEndofday(Endtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
}
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
entry = 0;
IF Endtime <= starttime Then
{
SetStopEndofday(0);
}
}
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
{
Tcond = False;
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
Mom = C- C[Length];
if Tcond == true and entry < 진입횟수 Then
{
If Mom > 0 AND Mom >= Mom[1] AND MarketPosition() <> 1 Then
Buy ("Mom_LE", AtStop, High + Pval);
If Mom < 0 AND Mom <= Mom[1] AND MarketPosition() <> -1 Then
ExitLong ("Mom_SE", AtStop, Low - Pval);
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
4.
input : StartTime(160000),EndTime(50000),진입횟수(10);
input : 익절틱수(400),손절틱수(50);
Inputs: Length(10), Pval(0.05);
var : Tcond(False),entry(0);
Variables: Mom(0);
IF Endtime > starttime Then
SetStopEndofday(Endtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Endtime);
}
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
entry = 0;
IF Endtime <= starttime Then
{
SetStopEndofday(0);
}
}
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
{
Tcond = False;
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
Mom = C- C[Length];
if Tcond == true and entry < 진입횟수 Then
{
If Mom > 0 AND Mom >= Mom[1] AND MarketPosition() <> 1 Then
ExitShort ("Mom_LE", AtStop, High + Pval);
If Mom < 0 AND Mom <= Mom[1] AND MarketPosition() <> -1 Then
Sell ("Mom_SE", AtStop, Low - Pval);
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
---------------------------
3번 수식어의 Inputs: Length(15), Pval(0.05);
4번 수식어의 Inputs: Length(10), Pval(0.05);
둘을 단일 수식어에 묶어서
3번은 Inputs: Length(15), Pval(0.05);
4번은 Inputs: Length(10), Pval(0.07);
변경해서 수식어 작성을 하고 싶습니다.
늘 감사드립니다.
2023-09-01
945
글번호 172030
답변완료
지표 부탁드립니다.
안녕하세요
1. 봉챠트 캔들을 볼때 전환선위로는 음봉이건 양봉이건 상관없이 빨강.
전환선 아래는 파랑색으로만 표시되었으면 합니다.
2 또한 단순 5 이평색상을 전환선 위는 빨강.
전환선 아래는 파랑
3. 전환선에 걸쳐있는경우는 캔들이나, 이평이나 녹색으로 표시 되었으면 합니다
이렿게 지표부탁드립니다.
고맙습니다.
2023-08-31
1049
글번호 172029
답변완료
종목 검색 시 어떻게 수식을 짜야하는지요?
{
if c<(th7-승수*th8)*th9 and
C<th3-승수*th13 and
C< th4-승수*th14 and
C<(th10-승수*th11)*th12 Then
Find(1);
}
예스트레이더에서 위의 4가지 조건을 만족하는 종목을 검색하고 싶습니다.
조건들은 모두 var로 정의해 놨는데, 종목을 검색할 때 어떻게 짜야 되는지요?
이대로 검색하니 엉뚱한 종목들이 함께 검색되고 있어서 어디서 오류가 발생했는지를 모르겠네요.
2023-08-31
1132
글번호 172028
답변완료
수식 부탁드립니다.
1. 종목검색수식에서 주가의 위치가 변동폭의 일정율이하이어야 한다는 조건 수식을
추가하고 싶은데 어케 해야하나요?
A=highest(H,120) ; 최고가
B=lowest(L,120) ; 최저가
최저가대비 최고가의 변동폭이 100%이상이면 현재의 주가는 변동폭의 50%이하이어야 하고
100%미만이라면 70%이하를 만족하는 수익을 만들고 싶습니다
2. DP = DIPlus(Period);
DM = DIMinus(Period);
AX = ADX(Period);
DP[2]-DP[1]차이와 DP[1]-DP의 차이간의 절대치로써 비교하고자 하는 수식을
만들고자하는데 어케 해야하나요?
2023-08-31
1194
글번호 172021
답변완료
문의
국내선물 거래
DayClose(25)를 기준으로 시장을 6등분 하고자 합니다
c < DayClose(25)+maxgap and c > DayClose(25)+mingap
위 식으로 아래 input 변수를 사용하면 되는지요?
DayClose(25)기준 상승범위
input : maxgap(7.50),mingap(0.00);
input : maxgap(15.00),mingap(7.50);
input : maxgap(9999),mingap(15.00);
dayclose(25)기준 하락범위
input : maxgap(0.00),mingap(-7.50);
input : maxgap(-7.50),mingap(-15.00);
input : maxgap(-15.00),mingap(-9999);
2023-09-01
1015
글번호 172017
답변완료
부탁드립니다
하루 매매횟수 1회로 제한하려면 넣는 수식 있을까요? 1차매수기준으로요 totaltrades ==0 넣어도 되나요? 아니면 다른 수식이 있을까요
2023-08-31
961
글번호 172016