커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6177
글번호 230811
답변완료
문의드립니다.
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 기타
장시작 후 진입시간 봉(index)에 따라 아래 ATR 트레일링 스탑 코딩을 변화해서 만들 수 있을까요? 예를 들어 index가 작으면 폭이 넓고 index가 클수록 폭이 작은 식으로 만들 수 있을까요?
input: ATR기간(10),역ATR길이(80);
if MarketPosition == -1 Then
ExitLong("역bx",Atlimit,Lowest(L,BarsSinceEntry)+atr(ATR기간)*역ATR길이);
if MarketPosition == 1 Then
ExitShort("역sx",Atlimit,highest(H,BarsSinceEntry)-atr(ATR기간)*역ATR길이);
2018-02-28
215
글번호 117017
답변완료
수식 부탁합니다
3일이동평균선
MACD(12,26,9)
현재주가가 3일이평선 비교
3일이평선이 전일 보다 상승시 +1
MACD가 전일 보다 상승시 +1
현재 주가가 현재 3일이평선 보다 상단에 위치시 +1
위 세가지 조건의 합을 실선으로 나타내고
합이 3으로 나오면 굵은선으로 합이 2이하로 나오면 실선으로
나타내는 지표식 부탁합니다
2018-02-28
204
글번호 117012
답변완료
부탁 드립니다.
매번 도움주심에 경배의 마음을 담아 감사 드립니다.
다음 수식을 해선 시작시간에 계산이 아닌
지정한 일자 및 시간에 zero에서 계산을 시작하는 수식 부탁 드립니다.
input : sig(10);
var : g1(0),g2(0),x(0),b(0),y(0),b2(0),ep(0);
Ep = 2/(sig+1);
g1=iff(c>o,v,0);
g2=iff(c<o,v,0);
x=g1-g2;
b=b+x;
if bdate != bdate[1] Then{
b2 = b[1];
y = b-b2;
var1 = y;
}
Else{
y = b-b2;
var1 = y * EP + var1 * (1-EP);
}
***참고수식*** (변형하기전의 원래 수식)
input : sig(10);
var : g1(0),g2(0),x(0),b(0),y(0),b2(0);
g1=iff(c>o,v,0);
g2=iff(c<o,v,0);
x=g1-g2;
b=b+x;
if date != date[1] Then
b2 = b[1];
y=b-b2;
var1 = ema(y,sig);
2018-02-28
213
글번호 117011
답변완료
문의드립니다
1
주식 가격이 백원짜리 부터 몇십만원 짜리 까지 다양한데
500만원 가까이 최대수량을 종목가격에 상관없이 매수 진입하고 싶습니다
2
1번 수식으로
매수 수량이 각각 진입되었다면
매수청산식도 부탁드립니다
2018-02-28
188
글번호 117010
sdsadsa 님에 의해서 삭제되었습니다.
2018-02-28
0
글번호 117009
답변완료
당일 청산 수식
안녕하세요.
30분챠트에서 5일,20일 골든크로스 매수조건 신호 발생후
매수진입해서
1. 익절은 진입가 대비 +10%에서 청산
2. 만약 익절까지 못하면 최고가대비 트레일링스탑 적용하여 2% 하락시 청산
3. 트레일링 스탑에 의해 청산도 못할경우 대비해서 3시 5분에 매수포지션 강제청산
이런 조건인 수식 가능한지요..
그리고, 종목검색(5201)을 이용한 종목을 검색하는 방법이
사용자 검색조건 창 옆에 있는 "검색" 버튼을 수동으로 매번 클릭을 해야만
종목이 검색되나요?
아니면 조건을 만족하는 종목이 실시간으로 자동검색되는 건가요?
사용이 서툴러서 그런지 실시간 자동검색은 안되는거 같던데, 가능하다면 어떻게 하면
되는지 말씀 부탁드립니다
2018-02-27
206
글번호 117008
관리자에 의해 프로그램 사용법 QnA로 이동되었습니다
2018-02-27
9
글번호 117007
답변완료
재문의 드립니다.
Input : 매수가격(63.89),매도가격(63.82),당일수익틱수(70);
Var : N1(0),dayPl(0),당일수익(0),Xcond(false),Tcond(false);
var : T1(0),count(0);
당일수익 = PriceScale*당일수익틱수;
if (sdate != sdate[1] and stime >= 80000) or
(sdate == sdate[1] and stime >= 80000 and stime[1] < 80000) Then{
Tcond = true;
Xcond = false;
N1 = NetProfit;
T1 = TotalTrades;
}
if MarketPosition == 0 Then
count = TotalTrades-T1;
Else
count = TotalTrades-T1+1;
if (sdate != sdate[1] and stime >= 055000) or
(sdate == sdate[1] and stime >= 055000 and stime[1] < 055000) Then{
Tcond = false;
if MarketPosition == 1 Then
exitlong();
if MarketPosition == -1 Then
ExitShort();
}
daypl = NetProfit-N1;
if TotalTrades > TotalTrades[1] and
(IsExitName("dbp",1) == true or IsExitName("dsp",1) == true) then
Xcond = true;
if Tcond == true and Xcond == false then{
if H < 매수가격 Then{
buy("b",AtStop,매수가격+PriceScale*1,1+count*1);
}
if L > 매도가격 Then{
sell("s",AtStop,매도가격-PriceScale*1,1+count*1);
}
}
if MarketPosition == 1 then{
ExitLong("dbp",atlimit,EntryPrice+((당일수익-daypl)/CurrentContracts));
}
if MarketPosition == -1 then{
ExitShort("dsp",atlimit,EntryPrice-((당일수익-daypl)/CurrentContracts));
}
오일 위에 가격대로 설정해서 해보면요. 매수 진입이 되었다가 매도진입 자리가 왔는데
그때는 진입이 안되고 그런 현상들이 보입니다.(혹은 반대이거나)
다른 가격대도 바꿔서 해보면 진입이 되기도 하고 안되기도 하고 해서 재문의드립니다.
위의 시그널대로 한번 대입해보시고 문제점이 있는지 확인해주세요.
2018-02-27
201
글번호 117006
답변완료
안녕하세요
1번; data 1 은 선물
당일 참조데이터 data2 가 당일의 저점(여기서 저점은 data2의저점) * 10% 상승라인에 수평선을 그리고
data2의 현제가가 그수평선을 도달시 2차 수평선인 당일저점 * 15% 에 다시 이어서
수평선을 그릴수있게 해주세요
아래와 같이 하면 data2의 저점으로 계산이 안되고
data1의 저점인 선물의 저점에서 계산이 되어서 표시가 되내요
var : c315(0);
if Data2(crossup(c,daylow(0)*1.1)) Then
c315 = c;
Plot1(c315, "do");
2번;
data1 선물 최근고점 (고점주기는 변수로입력해서 조정할수있게) 일때
참조 data2 도 최근고점 인지 고점이 아니면 수직선을 그리던지 아니면 화살표가 생기던지
어떻게 표현할수 있는 방법이 있을까요?
2018-02-28
210
글번호 117005