커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3731
글번호 230811
올독 님에 의해서 삭제되었습니다.
2020-05-17
26
글번호 138940
답변완료
봉 완성 진입 문의
if(lowVal > L) then {
ExitLong("s",AtMarket);
if((lowVal > C) then {
Sell("Se", AtMarket);
}
}
안녕하세요?
제가 하고 싶은건 특정 가격대(lowValue) 하방으로 터치하면 바로 ExitLong을 하고 싶고,
그 봉이 완성되기 기다렸다가 완성 시점에도 lowValue 보다 낮은 가격으로 C 가 완성되면 Sell 포지션 진입을 하고 싶습니다.
위와 같이 로직으로 하면 안될 것 같은데 추천 부탁드립니다.
감사합니다.
2020-05-17
929
글번호 138939
답변완료
수식에 오류가 있나요?
*매도진입가격을 입력해서 하락돌파 되면 조정시 매도진입가에서 들어가는 조건입니다.
익절과 손절 가격도 입력해 둡니다.
매도진입=8910.50
매도손절=8987
매도익절=8870
문제가 없다고 생각했는데 진입이후 손절도 익절도 되지가 않네요.
첨부한 이미지와 같이 진입은 정상적으로 되었으며,
시스템모니터에서도 예비신호는 뜨는데 전혀 실행이 안됩니다....
뭐가 문제인가요?
수식은 아래와 같습니다. 봐주십시오.
Input : 거래시작날짜(20200515), 거래시작시간(170000);
Inputs: 매도진입(0), 매도익절(0), 매도손절(0);
Vars: Tcond(false);
if sdate == 거래시작날짜 and
((sdate != sdate[1] and stime >= 거래시작시간) or
(sdate == sdate[1] and stime >= 거래시작시간 and stime[1] < 거래시작시간)) Then
{
Tcond = true;
}
if Tcond == true then
{
#매도조건#
If C < 매도진입
and (C[1] > 매도진입 or C[2] > 매도진입 or C[3] > 매도진입 or C[4] > 매도진입)
and MarketPosition == 0
Then Sell("매도", AtLimit, 매도진입,2);
If IsEntryName("매도") Then {
If currentcontracts == maxcontracts Then {
If C < EntryPrice Then ExitLong("매도익", AtLimit,매도익절,"",1);
If C > EntryPrice Then
ExitLong("매도본", AtLimit, 매도진입);
ExitLong("매도손", AtStop, 매도손절);
}
If currentcontracts < maxcontracts Then {
If lowest(C,barssinceentry) > 매도익절
Then exitshort ("매도익1",atstop,entryprice-(entryprice-lowest(C,barssinceentry))*0.2);
If lowest(C,barssinceentry) < 매도익절
Then exitshort ("매도익2",atstop,entryprice-(entryprice-lowest(C,barssinceentry))*0.4);
If lowest(C,barssinceentry) < 매도익절-(매도진입-매도익절)/2
Then exitshort ("매도익22",atstop,entryprice-(entryprice-lowest(C,barssinceentry))*0.8);
}
}
}
추가질문
1. 이해가 안되는 것은 위의 수식처럼 진입, 익절, 손절을 입력하지 않고,
입력은 고점과 저점만 해서 수식에 의해 산출되는 피보나치 되돌림선들을 변수로 사용할 경우에는
같은 조건에 손절, 익절이 된다는 것입니다.
예를 들어 23.8% 선에서 진입 50%선에서 손절로 설정하면 된다는 말이죠.... 왜 그럴까요?
2. 해외선물 나스닥과 같은 경우 HTS상에서 100틱이상은 손절이나 익절을 걸지 못하게 막아놓았던데, 시스템 수식에서는 상관이 없는 거죠?
2020-05-16
1114
글번호 138938
답변완료
수식 문의
항상 수식 작성에 친절한 도움 주셔서 감사합니다.
위의 차트 예시처럼 해외선물 및 국내선물 차트 바탕색깔 설정 수식을 문의 드립니다.
1. 스토캐스틱(12.6.6) "K"와 "D"가 서로 크로스될 때 차트 바탕색깔 설정
- K > D : 분홍색
- K < D : 하늘색
2. 이동평균선중 5일선 방향에 따라 차트 바탕색깔 설정
- 5일선이 상향할때 : 분홍색
- 5일선이 하향할때 : 하늘색
- 5일선이 평행할때 : 기존 설정된 바탕색
* 5일선 방향은 봉 완성후 시가 발생시 방향기준임
2020-05-18
1067
글번호 138937
답변완료
수정부탁드려요
강조에서는 나오는데 조건 검색이 안돼요
input : N(10),n1(20);
var : cnt(0),sum1(0),sum2(0),cnt1(0),sum3(0),sum4(0);
Array : mm[100](0);
if bdate != bdate[1] Then
{
mm[0] = 0;
for cnt = 1 to 99
{
mm[cnt] = mm[cnt-1][1];
}
}
mm[0] = mm[0] + m;
if mm[n-1] > 0 then
{
sum1 = 0;
sum2 = 0;
for cnt = 0 to N-1
{
sum1 = sum1 + mm[cnt];
sum2 = sum2 + DayVolume(cnt);
}
var1 = (sum1/sum2);
}
if bdate != bdate[1] Then
{
mm[0] = 0;
for cnt1 = 1 to 99
{
mm[cnt1] = mm[cnt1-1][1];
}
}
mm[0] = mm[0] + m;
if mm[n1-1] > 0 then
{
sum3 = 0;
sum4 = 0;
for cnt1 = 0 to n1-1
{
sum3 = sum3 + mm[cnt1];
sum4 = sum4 + DayVolume(cnt1);
}
var2 = (sum3/sum4);
var3 = (money/v);
}
if var1 > var2 and var2 > var3 Then
find(1);
2020-05-16
956
글번호 138936
답변완료
선물 호가차이를 막대그래프로 표현
안녕하세요 항상 감사드립니다
1,코스피 선물 매수호가량-매도호가량>0 이면 0선위 빨간 막대로 표현
코스피 선물 매수호가량-매도호가량<0 이면 0선위 파란 막대로 표현
즉 오실레이터 처럼 표현하고 싶습니다
2020-05-16
945
글번호 138935
답변완료
지표(점찍기) 좀 부탁 드립니다.
* 항상 많은 도움에 고맙 습니다.
# 아래 수식이 구현하는 두개의선이 교차돌파하면 빨강점 하락 하면 blue점 부탁 드립니다.
## [아래]
Input:mm(30),n(14);
Var:j(0),k(0),계산주기(0),X(0),sumXY(0),sumX(0),sumY(0),sumX²(0),
MinLRS(0),MinB(0),MinLRL(0);
Array:MinClose[100](0);
if mm >= BarInterval() then {
계산주기 = mm/BarInterval();
}
k = k + 1;
if DayIndex()%계산주기 == 0 then {
for j = 98 downto 0 {
MinClose[j+1] = MinClose[j];
}
X = X + 1;
k = 0;
}
MinClose[0] = C;
sumXY = 0; sumX = 0; sumY = 0; sumX² = 0;
For j = 0 To n-1 {
sumXY = sumXY + (X-j)*MinClose[j];
sumX = sumX + (X-j);
sumY = sumY + MinClose[j];
sumX²= sumX²+ (X-j)^2;
}
MinLRS = (n*sumXY - sumX*sumY)/(n*sumX²- sumX^2); //선형회귀선 기울기 LRS
MinB = (sumY*sumX²-sumX*sumXY)/(n*sumX²- sumX^2); //선형회귀선 절편 B
MinLRL = MinLRS * X + MinB;
Plot1(MinLRL);
if plot1(minlrl) > plot2(minlrl[k+1]) then buy();
end if
Plot2(MinLRL[k+1]); //현재가 미반영 LRL
if plot1(minlrl) < plot2(minlrl[k+1]) then sell();
end if
* 고맙습니다. 수고하십시요.
2020-05-16
973
글번호 138934
답변완료
변환부탁들비니다
A = sum(avg(c, 40, 1) * 1.3 <= C
and avg(거래대금/C, 40, 1) * 6 <= avg(거래대금/C, 2)
and avg(((h-l)/((h+l)/2)), 40, 1) * 1.5 <= avg(((h-l)/((h+l)/2)), 2) and C(1) < C);
B = valuewhen(1, A(1) != A, C);
if(A(1) - A(11) >= 1, B(1) < C and A(1) != A, 0)
2020-05-16
1273
글번호 138933
답변완료
챠트구현 도와주세요
수고가 많으십니다.
시간주기 단위의 봉챠트가 아닌
거래량 단위로 봉챠트를 구현하고 십습니다.
거래량단위 기준은 전일거래량 / 봉갯수로하고
거래체결수량를 카운트하면서 그 단위 거래량 동안에
발생하는 시가 고가 저가 종가를 구현하는겁니다.
그런데 난감한 것이...
매순간 거래체결수량이 정해놓은 단위거래량에 딱 맞아 떨어질리가 만무하니...
직전틱에서는 모자라고 직후에는 넘치는
현상이 계속해서 발생할수밖에 없을것같은데..
...
이게 가능할까요??
조언과 수식 구현을 부탁 드립니다.
미리 감사드림니다.
2020-05-15
965
글번호 138932