커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8153
글번호 230811
답변완료
아래 수식 변환좀 부탁드립니다.
아래 식은 스톡캐스틱으로 이루어졌는데 스톡캐스틱 모먼트 인덱스로 대처했으면 합니다.
단 아래에 매수 매도 청산조건은 그냥 스톡캐스틱으로 유지하고 싶습니다.
부탁드립니다.^^
input : Period11(1),Period12(2),Period13(2);
input : Period21(3),Period22(4),Period23(2);
input : Period31(5),Period32(6),Period33(2);
input : Period41(7),Period42(8),Period43(2);
input : Period51(9),Period52(10),Period53(2);
Input : P(11);
input : Period(12), Percent(13);
var : StoK1(0),StoD1(0);
var : StoK2(0),StoD2(0);
var : StoK3(0),StoD3(0);
var : StoK4(0),StoD4(0);
var : StoK5(0),StoD5(0);
var : mav(0),Evmd(0),EvUp(0),EvDn(0);
StoK1 = StochasticsK(Period11,Period12);
StoD1 = StochasticsD(Period11,Period12,Period13);
StoK2 = StochasticsK(Period21,Period22);
StoD2 = StochasticsD(Period21,Period22,Period23);
StoK3 = StochasticsK(Period31,Period32);
StoD3 = StochasticsD(Period31,Period32,Period33);
StoK4 = StochasticsK(Period41,Period42);
StoD4 = StochasticsD(Period41,Period42,Period43);
StoK5 = StochasticsK(Period51,Period52);
StoD5 = StochasticsD(Period51,Period52,Period53);
mav = ma(C,P);
Evmd = ma(C,Period);
EvUp = EnvelopeUp(Period, Percent);
EvDn = EnvelopeDown(Period, Percent);
if stok1 > stok2 and stok2 > stok3 and stok3 > stok4 and
crossup(stok5,stod5) and stok5 < 20 and
mav < Evmd Then
buy();
if stok1 < stok2 and stok2 < stok3 and stok3 < stok4 and
CrossDown(stok5,stod5) and stok5 > 75 and
mav > Evmd Then
sell();
if MarketPosition == 1 and
highest(Stok5,BarsSinceEntry) > 75 and
highest(Stod5,BarsSinceEntry) > 75 and
stok5 < 20 and stod5 < 20 then
exitlong();
if MarketPosition == -1 and
lowest(stok5,BarsSinceEntry) < 20 and
lowest(stod5,BarsSinceEntry) < 20 and
stok5 > 75 and stod5 > 75 then
ExitShort();
2018-02-26
274
글번호 116922
답변완료
수식문의 합니다
수고하십니다
data2의 10분봉으로
현재시점(오후 2시라고 가정)에서 10분봉 종가가
1) data2의 오늘현재 일봉기준
5 이평보다 크면 1, 아니면 0
20 이평보다 크면 1, 아니면 0
60 이평보다 크면 1, 아니면 0
의 합산점수 구하는 수식과
2) data2의 n일전 일봉기준
5 이평보다 크면 1, 아니면 0
20 이평보다 크면 1, 아니면 0
60 이평보다 크면 1, 아니면 0
의 합산점수 구하는 수식 부탁합니다.
2018-02-26
251
글번호 116915
답변완료
보완수식좀 부탁드립니다
"보조도구 중에서 지지저항분석선이 있는데
이선을 지지나 저항이 부디치면 선이 거기 까지만 나오게 하는 시스템 수식점 부탁드립니다
첨부파일에서 동그라미 친부분처럼 나오게 수식좀 부탁 드립니다 "
이런 질문에 아래수식을 답변받았는데
현재 나와있는선을 봉시작에서 오른쪽 끝까지 나오게 부탁드립니다
또 오른쪽으로 오다가 봉에 부디치면 선이 거기까지만 나오도록 좀 부탁드립니다
감사합니다
input : 간격(5);
var : H1(0),HTL(0);
var : L1(0),LTL(0);
if SwingHigh(1,H,간격,간격,간격*2+1) != -1 Then{
if Condition2[1] == true Then
TL_SetEnd(HTL,sdate[간격],stime[간격],H1);
H1 = H[간격];
HTL = TL_New(sdate[간격],stime[간격],H1,sdate,stime,H1);
TL_SetColor(HTL,RED);
Condition1 = true;
}
Else{
if Condition1 == true then
TL_SetEnd(HTL,sdate,stime,H1);
if crossup(H,H1) or CrossDown(L,H1) Then
Condition1 = false;
}
if SwingLow(1,L,간격,간격,간격*2+1) != -1 Then{
if Condition2 == true Then
TL_SetEnd(LTL,sdate[간격],stime[간격],L1);
L1 = L[간격];
LTL = TL_New(sdate[간격],stime[간격],L1,sdate,stime,L1);
TL_SetColor(LTL,blue);
Condition2 = true;
}
Else{
if Condition2 == true then
TL_SetEnd(LTL,sdate,stime,L1);
if crossup(H,L1) or CrossDown(L,L1) Then
Condition2 = false;
}
2018-02-26
273
글번호 116913
답변완료
Data2
이용해서 매매를하려고합니다.
근데 이렇게 쓰게될시
매매1= ((data2(n) and dat2(x)) and
이렇게 일일히 다해줘야하나요
매매1= data2(내용) 이렇게해야하나요?
2018-02-26
254
글번호 116912
답변완료
함수요청
안녕하세요?
함수요청드립니다.
최근 5개 봉을 비교하여
매수진입 : 장중 고가 돌파시
매도진입 : 장중 저점 이탈시
손절 : 10틱
익절 : 50틱
여기서 진입신호는 청산 신호 이후의 봉을 새롭게 카운팅하여 신호를 생성시키고자 합니다.
2018-02-26
236
글번호 116910
답변완료
문의드립니다
1. 예스스팟에서 엑셀객체를 경로를 지영하여 연결했는데.. 실행해보니 객체를 생성할 수 없읍니다. 엑셀파일이 연결되지 않읍니다라는 메세지가 나오네요.. 연결을 확인해 보니 예스트리이더/스팟/ 임포터로 설정이 되어 있읍니다.. 경로설정은 다른데로 해 놓았는데 왜 다르게 연결되어 있는지요 ?
2. 예스스팟에서 챠트1의 미완성신호가 매수 이거나 완성신호가 매수일 때, 챠트2의 미완성신호 매수 또는 완성신호가 매수일때 매수로 진입하는 수식을 부탁드립니다. 감사합니다
2018-02-26
282
글번호 116909
답변완료
문의드립니다.
과매도 강조 수식이 궁금합니다^^
2018-02-26
253
글번호 116907
답변완료
문의드립니다.
매번 감사합니다.
1. 기타
코딩 변환부탁드립니다.
inputs:
Price( MedianPrice ),
Threshold( 1.4 ),
N( 30 ) ; { N must be an even number }
variables:
HalfN( 0 ),
NMinus1( 0 ),
HalfNMinus1( 0 ),
Log2( 0 ),
Smooth( 0 ),
N3( 0 ),
HH( 0 ),
LL( 0 ),
Count( 0 ),
N1( 0 ),
N2( 0 ),
Ratio( 0 ),
Dimen( 0 ) ;
Once
begin
if Mod( N, 2 ) <> 0 or N = 0 then
RaiseRuntimeError( "The input N must be an" +
" even number." ) ;
HalfN = 0.5 * N ;
NMinus1 = N - 1 ;
HalfNMinus1 = HalfN - 1 ;
Log2 = Log( 2 ) ;
end ;
Smooth = ( Price + 2 * Price[1] + 2 * Price[2] +
Price[3] ) / 6 ;
N3 = ( Highest( Smooth, N ) - Lowest( Smooth, N ) ) /
N ;
HH = Smooth ;
LL = Smooth ;
for Count = 0 to HalfNMinus1
begin
if Smooth[Count] > HH then
HH = Smooth[Count] ;
if Smooth[Count] < LL then
LL = Smooth[Count] ;
end ;
N1 = ( HH - LL ) / HalfN ;
HH = Smooth[HalfN] ;
LL = Smooth[HalfN] ;
for Count = HalfN to NMinus1
begin
if Smooth[Count] > HH then
HH = Smooth[Count] ;
if Smooth[Count] < LL then
LL = Smooth[Count] ;
end ;
N2 = ( HH - LL ) / HalfN ;
if N1 > 0 and N2 > 0 and N3 > 0 then
Ratio = 0.5 * ( ( Log( N1 + N2 ) - Log( N3 ) ) /
Log2 + Dimen[1] ) ;
Dimen = Average( Ratio, 20 ) ;
Plot1( Dimen, "Dimen" ) ;
Plot2( 1.6, "1.6", Blue ) ;
Plot3( Threshold, "Trigger", Blue ) ;
inputs:
Price( MedianPrice ),
Threshold( 1.4 ),
N( 30 ), { N must be an even number }
TrendLength( 10 ),
StopLossPct( 5 ) ;
variables:
HalfN( 0 ),
NMinus1( 0 ),
HalfNMinus1( 0 ),
Log2( 0 ),
Smooth( 0 ),
N3( 0 ),
HH( 0 ),
LL( 0 ),
Count( 0 ),
N1( 0 ),
N2( 0 ),
Ratio( 0 ),
Dimen( 0 ) ;
Once
begin
if Mod( N, 2 ) <> 0 or N = 0 then
RaiseRuntimeError( "The input N must be an" +
" even number." ) ;
HalfN = 0.5 * N ;
NMinus1 = N - 1 ;
HalfNMinus1 = HalfN - 1 ;
Log2 = Log( 2 ) ;
end ;
Smooth = ( Price + 2 * Price[1] + 2 * Price[2] +
Price[3] ) / 6 ;
N3 = ( Highest( Smooth, N ) - Lowest( Smooth, N ) ) /
N ;
HH = Smooth ;
LL = Smooth ;
for Count = 0 to HalfNMinus1
begin
if Smooth[Count] > HH then
HH = Smooth[Count] ;
if Smooth[Count] < LL then
LL = Smooth[Count] ;
end ;
N1 = ( HH - LL ) / HalfN ;
HH = Smooth[HalfN] ;
LL = Smooth[HalfN] ;
for Count = HalfN to NMinus1
begin
if Smooth[Count] > HH then
HH = Smooth[Count] ;
if Smooth[Count] < LL then
LL = Smooth[Count] ;
end ;
N2 = ( HH - LL ) / HalfN ;
if N1 > 0 and N2 > 0 and N3 > 0 then
Ratio = 0.5 * ( ( Log( N1 + N2 ) - Log( N3 ) ) /
Log2 + Dimen[1] ) ;
Dimen = Average( Ratio, 20 ) ;
if Dimen crosses under Threshold then
begin
if Close > Average( Close, TrendLength ) then
Buy next bar market
else
Sell short next bar at market ;
end ;
SetStopShare ;
SetDollarTrailing( iff( EntryPrice > 0, EntryPrice,
Close ) * 0.01 * StopLossPct ) ;
2018-02-26
319
글번호 116906
답변완료
수식문의
5개의 수식중 3개가 조건만족하면 매수 3개가 조건만족하지못하면 매도하는 수식부탁드립니다 그리고 바로 이전봉 몸통부분만 수평선을 그을수있는 수식부탁합니다
2018-02-26
240
글번호 116897