커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
1650
글번호 230811
답변완료
수식 부탁드립니다.
국내 선물에서
특정 조건이 되면 매수 또는 매도로 30개 진입 후
진입가격으로부터
매수집입 대비 5, 10, 15 pt 상승시 각 10개씩 분할 매도
매도진입 대비 -5, -10, 15 하락시 각 10개씩 분할 매수 하며,
(각 조건별 중복 청산 없음)
조건 미달성으로 남은 잔액은 당일 종가 청산하는 식 부탁드립니다.
감사합니다.
2022-09-06
1890
글번호 162037
답변완료
Highest를 생각없이 쓰다가 궁금해졌습니다.
var1 = Highest(H,N) ; 최근 N개봉 중 최고가
#매수진입
if marketposition == 0 Then{
Buy("B",AtStop,Var1+PriceScale);
}
아무런 생각없이 Highest를 위의 코드처럼 쓰고있었는데요.
이렇게하면 현재 봉이 미완성시 고가와 종가 구분을 어떻게 하고 매수를 하는걸까요...?
지금까지 매수/매도가 잘 되어서 잘 되는줄 알았는데 기본적인 의문이 들었습니다.
제가 원래 의도한바는
현재가격(현재 봉의 종가)가 N개봉 고가 돌파시 +1틱에 매수하는 거였는데요.
현재가격(현재 봉의 종가)이 N개봉 고가 돌파시 종가 = Highest(H,N)이 되어버리는거 같아서요.
2022-09-06
1672
글번호 162036
답변완료
검토 부탁드립니다.
안녕하세요?
아래 수식은 참조데이터2 거래량분포입니다.
당일만 나타나게되어있는데 첨부그림에서 보듯이 왼쪽 전일 고저라인이 세로로 나타나 보기가 불편합니다.
세로라인이 나타나지 않게 요청드려봅니다.
도와주심에 감사드립니다.
===================================
var : C2(0,Data2),H2(0,Data2),L2(0,Data2),cnt(0,Data2);
var : Sidx(0,Data2),Sidx1(0,Data2),Eidx(0,Data2),Eidx1(0,Data2),Pre1(0,Data2);
C2 = Data2(c);
if Data2(Bdate != Bdate[1]) Then
{
H2 = C2;
L2 = C2;
Sidx = data2(Index);
Sidx1 = Sidx[1];
Eidx1 = Eidx[1];
}
Eidx = data2(Index);
if data2(Bdate != Bdate[1] or (Bdate == bdate[1] and C2 > h2)) Then
h2 = C2;
if data2(Bdate != Bdate[1] or (Bdate == Bdate[1] and C2 < l2)) Then
l2 = C2;
if Sidx1 > 0 Then
{
pre1 = 0;
For cnt = data2(Index)-Eidx1 to data2(Index)-Sidx1
{
if data2(sDate[cnt] < sDate and sTime[cnt] <= sTime) Then
{
pre1 = C2[cnt];
cnt = data2(Index-Sidx1+1);
}
}
}
if CurrentDate == sDate Then
{
if Data1(sDate) == Data2(sDate) Then
{
Plot1(C2,"참조",IFf(C2 >0,RGB(243,97,220),RGB(102,152,253)));
Plot2(H2,"최고");
Plot3(L2,"최저");
Plot4(pre1,"전일");
PlotBaseLine1(0);
}
Else
{
NoPlot(1);
NoPlot(2);
NoPlot(3);
NoPlot(4);
}
}
if CurrentDate == sDate Then
{
Plot5(Data2(OpenD(0)),"D2당일시가");
Plot6(Data2(HighD(0)),"D2당일고가");
Plot7(Data2(LowD(0)),"D2당일저가");
Plot8(Data2(LowD(0)+(HighD(0)- LowD(0))*0.236),"23.6%");
Plot9(Data2(LowD(0)+(HighD(0)- LowD(0))*0.764),"76.4%");
Plot10(Data2(LowD(0)+(HighD(0)- LowD(0))*0.382),"38.2%");
Plot11(Data2(LowD(0)+(HighD(0)- LowD(0))*0.618),"61.8%");
Plot12(Data2(LowD(0)+(HighD(0)- LowD(0))*0.50),"50.0%");
}
2022-09-06
1686
글번호 162035
답변완료
키움 수식입니다 시스템 트레이딩으로 변경 부탁 드립니다.
A=cci(5);
A < lowest(A(1), 5)
2022-09-06
1504
글번호 162034
답변완료
netprofit
아래와 같이 netprofit함수를 이용해서 일요일이후 누적된 pt로 부터 수익금을 계산하여 진입수량을 자동으로 변경코자 합니다. (매주 일요일에 예수금을 수동으로 업데이트)
실전에 적용할 수 있을까요? 실전차트에 시스템을 (시험적용)시켜보니 진입수량이 모두 1로 나와서 문의드립니다.
netprofit은 차트상의 신호값이므로, 실제 진입된 수량을 반영할 방법이 없는것인가요?
--------------------------------------------------------------------------------
if DayOfWeek(bdate) < dayofweek(bdate[1]) Then
{
N1 = NetProfit; //지난주까지의 누적손익
}
MPL = NetProfit-N1;
2022-09-06
1610
글번호 162033
답변완료
시그널 부탁드립니다!!
수고 많으세요 간절하게 도움 부탁 드립니다
일목균형표 매수신호 입니다. 몇 가지 부탁 드립니다.
(분봉/일봉/주봉)에 적용 하고 싶습니다.
===================================================================
1) 후행스팬 캔들돌파 신호 (분/일/주)봉 적용하고 싶습니다.
*키움 주봉 신호를 (분/일/월)봉 신호 요청합니다.
Crossup(C,shift((highest(high,52)+lowest(low,52))/2,26-1)))
====================================================================
2) 전환선이 기준선돌파 신호 (분/일/주)봉 적용하고 싶습니다.
* 키움 주봉 신호를 (분/일/월)봉 신호 요청합니다.
Crossup((highest(high,단기)+lowest(low,단기))/2, (highest(high,중기)+lowest(low,중기))/2)
====================================================================
3) 음운돌파(선행1,2)
* 키움 신호 입니다.
A=shift((highest(high,longPeriod)+lowest(low,longPeriod))/2,midperiod1);Crossup(C,A)
=====================================================================
4) 월봉시그널(40일선)
*키움 신호 입니다.
CrossUp(OBV(),(MA(OBV(),10,지수)))
========================================================================
매도신호 부탁드립니다.
상승시 전환선이 기준선 이탈
2022-09-06
1535
글번호 162032
답변완료
시스템 부탁드려요
아래수식 테스트에 말씀하신대로 생각한것보다 오류가 있어서
다시 부탁드리겠습니다.
다시 부탁드리겠습니다.
1. 직전 100봉 중 최고가 이후
2. 1 최고가 대비 20% 이상 하락 후
3. 1번 봉의 50봉 안에 최고가 돌파시 매수진입
똑같이 매도진입
이렇게 부탁드립니다.
그리고
if value1 > 0 and Index <= value1+50 and C > Value2 Then
Buy();
위 수식에서 "C > Value2" 이부분이 "var2 = lowest(L,100);"를 뚫고 올라가야되는데
현재는 단순히 Low보다 종가가 큰 인것 같습니다.
이부분도
if C < Var2[1] Then
{
value1 = Index;
Value2 = L;
}
이때의 최저점으로 하여야 될 것 같습니다.
--------------------------------------------
안녕하세요
예스스탁입니다
올려주신 내용이면 100개봉 최저가나 최고가를 갱신 후
다음봉에서 종가가 높거나 낮으면 바로 신호가 발생합니다.
100개봉 최저가/최저가 갱신기준이므로
가장최근 발생한 값을 기준으로 합니다.
var1 = highest(H,100);
var2 = lowest(L,100);
if C < Var2[1] Then
{
value1 = Index;
Value2 = L;
}
if value1 > 0 and Index <= value1+50 and C > Value2 Then
Buy();
if MarketPosition == 1 Then
{
ExitLong("bx1",AtStop,Value2[BarsSinceEntry]);
ExitLong("bx2",AtStop,highest(H,BarsSinceEntry)-(highest(H,BarsSinceEntry)-EntryPrice)*0.1);
}
if C > Var1[1] Then
{
value3 = Index;
Value4 = H;
}
if value3 > 0 and Index <= value3+50 and C < Value4 Then
sell();
if MarketPosition == -1 Then
{
ExitShort("sx1",AtStop,Value4[BarsSinceEntry]);
ExitShort("sx2",AtStop,Lowest(H,BarsSinceEntry)+(EntryPrice-lowest(L,BarsSinceEntry))*0.1);
}
즐거운 하루되세요
> 마식 님이 쓴 글입니다.
> 제목 : 시스템 부탁드립니다.
>
1. 직전 100봉 최저가
2. 1번을 하향돌파하고 50봉 안에 1번을 상향돌파할 시 매수 진입
3. 1번을 손절선으로 설정
4. 직전 100봉 최고가
5. 4번을 상향돌파하고 50봉 안에 4번을 하향돌파할 시 매도 진입
6. 4번을 손절선으로 설정
-----------
7. 매수 진입 후 수익률 최고가 대비 20% 하락시 매수 청산
8. 매도 진입 후 수익률 최고가 대비 20% 하락시 매도 청산
2022-09-06
1093
글번호 162031
답변완료
스위칭매매와 그래프에서요...
Q1: 예를들어서 5,20 골든크로스에서 buy,5,20,데드크로스에서 sell, 이 두명령어만 한다하면 스위칭 매매가 되는건지 알고싶습니다.매수청산,매도청산명령어 안써도 되는건지요?
Q2: 참고 파일 손익그래프에서 스위칭매매로 상방진입했는데 왜 빨간색이익으로 안나오구 파란색 손실로 나오는건지요? 실제 데이터분석통계로 바도 손실로 나오구요...
2022-09-06
1343
글번호 162028
답변완료
nextbaropen
nextbaropen을 사용해서 좀더 빠르게 당일 시가가 감지되는 순간 바로 주문이 나가게 하고 싶습니다
아래와 같이 전일의 종가값을 사용한다는 것인데,
nextbaropen값이 들어오는 순간, C값이 원하는대로 어제의 종가값을 참조하게 되는것인지요?
혹시 그 전날의 종가값을 가져오게 되는건 아닌지요?
----------------------------------------------------------------
if nextbarstime == 090000 and data2(C) < data2(ma(C,3))
2022-09-06
1402
글번호 162019