커뮤니티
예스랭귀지 Q&A
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1373
글번호 230811
타요 님에 의해서 삭제되었습니다.
2024-10-03
50
글번호 183954
답변완료
예스트레이더 종목검색으로 요청합니다^.^
항상고맙고 감사드립니다..
아래수식은 키움신호수식입니다..
이것을 예스트레이더 종목검색으로 변환부탁드립니다..
v>avg(v,(1),period1)*m
and
c>highest(c(1),period2)
(지표변수)
period1 : 10
m : 3
period2 : 40
2024-10-03
634
글번호 183953
답변완료
종목을 검색하고 싶습니다.
늘 감사합니다.
M5=ma(c,5);
M20=ma(c,20);
A=valuewhen(1,crossdown(M5,M20),M20);
crossup(c,A)
&&
c>o
종목을 검색할수있었으면 합니다.
2024-10-03
778
글번호 183952
답변완료
수식 요청드립니다.
수식에 아래조건을 추가요청드립니다.
옵션매매에 사용합니다.
참고로 매수만 있고 매도는 없습니다.
추가1
옵션가격대별 매수수량
1) 가격이 0.01~0.1 일때 10개
2) 가격이 0.11~0.5 일때 6개
3) 가격이 0.51~1.0 일때 4개
4) 가격이 1.01 이상 일때 1개
추가2
익절조건
매수후 120% 수익시 절반익절
200% 수익시 나머지 모두청산
매수수량이 1개일때는 200% 에서 청산
추가3
진입횟수 변수로 설정
2번만 진입으로 변수설정
추가4
청산시
(손매매로 미리 청산 했으면 보유수량이 없을때는 매도되지 않게 가능한가요?)
(가능하다면 청산수식에 넣어주세요.)
※ 각줄의 수식에 주석을 부탁드립니다.
--------수식-----------------------------------
Input:Multiplier(70),Period(2);
#input : 당일진입횟수(3);
Input:당일청산시간(151900),매수종료시간(141500) ;
var : b(0),s(0);
Var :atr_val(0),UpperBand(0),LowerBand(0),FinalUpperBand(0),FinalLowerBand(0),SuperTrend(0);
var : entry(0),vv(0);
If CurrentBar > 0 Then {
atr_val = Ema(Max(C[1],H) - Min(C[1],L) , Period);
UpperBand = (H + L) / 2 + Multiplier * atr_val;
LowerBand = (H + L) / 2 - Multiplier * atr_val;
If UpperBand < FinalUpperBand[1] or C[1] > FinalUpperBand[1] Then
FinalUpperBand = UpperBand;
If LowerBand > FinalLowerBand[1] or C[1] < FinalLowerBand[1] Then
FinalLowerBand = LowerBand;
If SuperTrend[1] == FinalUpperBand[1] and C <= FinalUpperBand Then
SuperTrend = FinalUpperBand;
Else If SuperTrend[1] == FinalUpperBand[1] and C > FinalUpperBand Then
SuperTrend = FinalLowerBand;
Else If SuperTrend[1] == FinalLowerBand[1] and C >= FinalLowerBand Then
SuperTrend = FinalLowerBand;
Else If SuperTrend[1] == FinalLowerBand[1] and C < FinalLowerBand Then
SuperTrend = FinalUpperBand;
#Plot1(SuperTrend,"Super Trend",IFF(SuperTrend > C,Blue,Red),Def,3);
}
# 매수/매도청산
If sTime < 매수종료시간 and SuperTrend < C Then
{
Buy();
}
# 매도/매수청산
If sTime < 당일청산시간 and SuperTrend > C Then
{
ExitLong();
}
#50%손실이면 전량청산
#SetStopLoss(Loss,PercentStop);
#당일청산
SetStopEndofday(당일청산시간);
-------------------------------------------------
2024-10-03
709
글번호 183951
답변완료
부탁드립니다.
도움에 감사 드립니다.
그림과 같이 부탁 드립니다.
input:기간(30);
input:계산개수(30);
input:sig(15);
Var:j(0),k(0),구간최고가(0),구간최저가(0),가격단위(0),
총거래량(0),최대거래량(0),최대계산(0),비중(0),TL1(0);
Array:계산[15,3](0); // 열번호 1:가격이상,2:가격미만,3:수량
구간최고가 = Highest(H,기간);
구간최저가 = Lowest(L,기간);
가격단위 = (구간최고가 - 구간최저가)/계산개수;
계산[1,1] = 구간최저가;
계산[1,2] = 계산[1,1] + 가격단위;
계산[1,3] = 0;
For j = 2 To 계산개수 {
계산[j,1] = 계산[j-1,1] + 가격단위;
계산[j,2] = 계산[j-1,2] + 가격단위;
계산[j,3] = 0;
}
총거래량 = 0;
For k = 0 To 기간 - 1 {
총거래량 = 총거래량 + V[k];
For j = 1 To 계산개수 {
If 계산[j,1] <= C[k] and C[k] < 계산[j,2] Then {
계산[j,3] = 계산[j,3] + V[k];
j = 계산개수;
}
}
}
최대거래량 = 0;
최대계산 = 0;
For j = 1 To 계산개수 {
If 최대거래량 < 계산[j,3] Then {
최대거래량 = 계산[j,3];
최대계산 = j;
}
}
var1=c-계산[최대계산,1];
var11=ma(var1,sig);
Plot1(var11);
PlotBaseLine1(0);
2024-10-03
887
글번호 183950
답변완료
예스랭귀지로 변환 부탁드려요
항상 노고에 감사드림니다.
아래의 수식을 종목검색식으로 부탁드림니다.
S=sum(1);
M5=ma(C,기간1,지수);
M2=ma(C,기간2);
상전=M5>M5(1) && M5(1)<M5(2);
DC = valuewhen(1, Crossdown(M5,M2), S);
상1=Valuewhen(1, 상전, S);
상2=Valuewhen(2, 상전, S);
상3=Valuewhen(3, 상전, S);
GC = valuewhen(1, CrossUp(M5,M2),S);
조건W=상3<DC && DC<상2 && 상2<상1 && 상1<GC;
조건W && !조건W(1)
지표변수
기간1 5
기간2 20
2024-10-03
617
글번호 183949
답변완료
수식문의입니다
1.지표수식
주봉과 월봉의 Macd(12,26,9)선, 시그널선, 오실레이터를 일봉차트에서 설정할수 있는
수식을 만들어 주세요
2. 종목검색에 따른 검증방법
input : 하락갭율(1.5), 양음봉기준율(0.1), 갭신호기간(10), 음양봉횟수(3);
var : cnt(0), 양봉(False), 음봉(False), GMP(0) ;
양봉 = C >= O *(1+양음봉기준율/100) ;
음봉 = C < O*(1+양음봉기준율/100);
Array : WeekO[20](0),WeekC[20](0);
if DayOfWeek(Bdate) < DayOfWeek(Bdate[1]) Then
{
WeekO[0] = O; #주봉시가
For cnt = 1 to 19
{
WeekO[cnt] = WeekO[cnt-1][1];
WeekC[cnt] = WeekC[cnt-1][1];
}
}
WeekC[0] = C;
if Bdate > Bdate[1]+1000 Then
{
value8 = O; #연봉시가
value9 = value8[1];
}
if Bdate > Bdate[1]+30 Then
{
value10 = O; #월봉시가
value11 = value10[1];
}
#MACD비율선
#========================================================================
Input : shortPeriod(12), longPeriod(26), sPeriod(9),M기준0선(-0.099),M기준낙폭선(-7.5) ;
Var : MACDv(0), MACDsig(0), Macdosc(0), MACDR(0), MsigR(0), MoscR(0) ;
MACDv = MACD(shortPeriod, longPeriod);
MACDsig = ema(MACDv,sPeriod);
macdosc = MACDv-MACDsig;
MACDR = macdv/C*100; #비율MACD선
MsigR = MACDsig/C*100; #비율MACD 시그널선
MoscR = macdosc/C*100; #비율MACD 오실레이터 막대량
Condition1 = C[1] * (1-하락갭율/100) >= O and C[1] > O and O[1] > O ; #하락갭
if Condition1 == true and C <= O Then #하락갭이면서 음봉인 경우
{
if 양봉[1] == true Then
{
Var6 = O[1] ;
Var7 = O ;
}
if 음봉[1] == true Then
{
Var6 = C[1] ;
Var7 = O ;
}
}
if Condition1 == true and C > O Then #하락갭이면서 양봉인 경우
{
if 양봉[1] == true and C <= C[1] Then
{
Var6 = O[1] ;
Var7 = O ;
}
if 양봉[1] == true and C > C[1] Then
{
Var6 = C ;
Var7 = C[1] ;
}
if 음봉[1] == true and C <= C[1] Then
{
Var6 = C[1] ;
Var7 = C ;
}
if 음봉[1] == true and C > C[1] Then
{
Var6 = C[1] ;
Var7 = O ;
}
}
#최저가 위치설정
Condition2 = Lowest(L,60) == Lowest(L,5) or Lowest(Min(C,O),60) == Lowest(Min(C,O),5);
# 일정율의 하락갭이 발생되고(Condition1 == true), 발생된 하락갭은 이전의 하락갭보다 하향되어야 하고(Var7[1] > Var7), 최저가위치(Condition2 == true)에서 발생되었으나 종가가 주봉의 시가보다 낮거나 macd오실레이터량이 하락하거나 전일종가보다 낮은 경우
Condition3 = Var7 > 0 and Condition1 == true and Var7[1] > Var7 and C >= Var7 and C > O and Condition2 == true and ( C < WeekO[0] or C < C[1] or MoscR < MoscR[1] );
var : OO(0),NN(0);
if Condition3 == true Then
{
OO = O;
NN = 0;
}
Else
{
if OO > 0 and C > O and C[1] < O[1] Then
{
NN = NN+1;
if NN >= 3 and
O < OO and
( C > WeekO[0] or C > C[1] or MoscR > MoscR[1]) Then
FinD(1);
}
}
상기 종목검색에 따른 검색시에 종가매수를 하여 20일간 보유한다고 가정하는 경우의
최고수익율과 달성기간, 최대손실율과 달성기간, 매수후 5일간의 수익율(고가매도가정)드에 대한 데이터검증할수 있는 수식을 부탁드립니다.
2024-10-03
705
글번호 183947
요타 님에 의해서 삭제되었습니다.
2024-10-04
20
글번호 183946
답변완료
수고하십니다. 도와주세요
윌리엄스 r 지표를 가격차트에 올렸을때
윌리엄스가 침체에서 벗어나서 tsf 선과 골드크로스 하는 종목검색을 만들고 싶습니다.
2024-10-03
586
글번호 183945