커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
8101
글번호 230811
답변완료
문의드립니다.
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 기타
분봉
a = 당일 고가-시가 혹은
시가-당일 저가의
절대값
a값의 60일 최대값.
2. 기타
수익률 2% 이상일 때
n틱 이상 되돌리면 즉시 청산
봉가정 오류 없도록
2018-09-05
213
글번호 121812
답변완료
시스탬
아래지표로 현재가가 위로가면 매수 반대는 매도
변수 수정가능하도록 부탁합니다.
input : Left(4),Right(4),구분(1);
if SwingHigh(1,H,Left,Right,Left+Right+1) != 1 Then
value1 = H[Right];
if SwingLow(1,L,Left,Right,Left+Right+1) != 1 Then
value2 = L[Right];
if value1 > 0 and value2 > 0 Then{
if 구분 == 1 Then{
plot1(c);
plot2(value1-(value1-value2)*0.382);
plot3(value1-(value1-value2)*0.618);
}
if 구분 == -1 Then{
plot1(C);
plot2(value2+(value1-value2)*0.382);
plot3(value2+(value1-value2)*0.618);
}
}
2018-09-04
230
글번호 121811
답변완료
주석요청
안녕하세요?
바쁘시겠지만 아래 스크립트 각 주석을 요청드립니다.
언제나 감사드립니다.
input : N(10);
var : cnt(0);
var : sum1(0),sum2(0),sum3(0),sum4(0),sum5(0);
var : mav1(0),mav2(0),mav3(0),mav4(0),mav5(0);
Array : value[5](0);
if bdate != bdate[1] then
{
sum1 = 0;
sum2 = 0;
sum3 = 0;
sum4 = 0;
sum5 = 0;
for cnt = 1 to N
{
sum1 = sum1 + (DayHigh(cnt)-DayOpen(cnt));
sum2 = sum2 + (DayOpen(cnt)-DayLow(cnt));
sum3 = sum3 + abs(DayOpen(cnt)-DayClose(cnt+1));
sum4 = sum4 + abs(DayHigh(cnt)-DayClose(cnt+1));
sum5 = sum5 + abs(DayLow(cnt)-DayClose(cnt+1));
}
mav1 = sum1/N;
mav2 = sum2/N;
mav3 = sum3/N;
mav4 = sum4/N;
mav5 = sum5/N;
value[0] = DayOpen(0)+mav1;
value[1] = DayOpen(0)+mav2;
value[2] = DayClose(1)+mav3;
value[3] = DayClose(1)+mav4;
value[4] = DayClose(1)+mav5;
var1 = 0;
var2 = 0;
value1 = 0;
value2 = 0;
for cnt = 0 to 4
{
if value[cnt] > dayopen Then
{
if var1 == 0 or (var1 > 0 and abs(value[cnt]-dayopen) < var1) Then
{
var1 = abs(value[cnt]-dayopen);
value1 = value[cnt];
}
}
if value[cnt] < dayopen Then
{
if var2 == 0 or (var2 > 0 and abs(value[cnt]-dayopen) < var2) Then
{
var2 = abs(value[cnt]-dayopen);
value2 = value[cnt];
}
}
}
}
if MarketPosition <= 0 and value1 > 0 and crossup(c,value1) Then
buy("b",AtMarket);
if MarketPosition <= 0 and value2 > 0 and CrossDown(c,value2) Then
sell("s",AtMarket);
if MarketPosition == 1 and value2[BarsSinceEntry] > 0 Then
ExitLong("bx",AtStop,value2[BarsSinceEntry]);
if MarketPosition == -1 and value1[BarsSinceEntry] > 0 Then
ExitShort("sx",AtStop,value1[BarsSinceEntry]);
SetStopEndofday(152500);
2018-09-03
224
글번호 121810
답변완료
미청산 문제.
Inputs:
Length1(42), Length2(50), IPS(7), entrypoint(1), 금액(1000000), atrnumber(11);
Variables:
ATR(0), L2(0);
If CurrentBar == 1 Then
L2 = MinList(Length1, Length2);
ATR = ATR(atrnumber);
//Long Entry
Buy("jail break",atstop,Highest(High, Length1) + entryPoint, Floor(금액/c));
If MarketPosition == 1 Then {
//Long Protective Stop
ExitLong("jail break el1",atstop,EntryPrice - IPS * ATR, "jail break");
//Long Exit
ExitLong("jail break el2",atstop,Lowest(Low, L2) - 1,"jail break");
}
상기 식에서 exitlong 에서 "jail break" 라는 말은 그 앞에 "jail break" 수량 만큼 청산하라 의미로 알고 있습니다.
1. 이 로직을 파라미딩 모두 허용으로 돌리면 최대 20번의 거래가 일어나던데요. 20번이 한계인가요?
2. 분명히 모두다 청산이 되어야 하는데 1배팅정도가 청산이 안되는적이 있습니다. 로직이 잘된것인가요?(주문이 나가지 않는것 같습니다. 미체결이 따로 없습니다)
2018-09-03
258
글번호 121809
답변완료
문의드립니다.
선물차트 기준으로 문의드립니다.
틱차트에, <3분봉차트의 티론레벨스(기간값 50)지표의 중간선>을 나타내고자 합니다.
분봉차트의 주기와 티론지표의 기간값은 수정가능하게 부탁드립니다.
수식을 어떻게 작성해야 하는지요?
부탁드립니다. 그리고 항상 감사드립니다. 수고하세요!!!
2018-09-03
235
글번호 121808
슛팅 님에 의해서 삭제되었습니다.
2018-09-03
0
글번호 121807
wscamtk 님에 의해서 삭제되었습니다.
2018-09-03
22
글번호 121806
답변완료
함수수식 부탁드립니다
안녕하세요
dayopen, dayclose, dayhigh, daylow 함수를 해선에 적용할려고 하니 해선 시작과 종료 시간이 국선과 달라서 어려움이 많습니다..
함수 이름을 dayopen2, dayclose2, dayhigh2, daylow2 등으로 해서 해선 시작과 종료시간에 따라서 값을 구할수 있도록 바꿔주시면 감사하겠습니다. 그리고 써머타임도 자동으로 계산되어서 적용되면 더 좋을것 같습니다..
그럼 잘 부탁드리겠습니다.
2018-09-03
215
글번호 121805
답변완료
복리로 투자.
input : 금액(10000000);
var : MM(0);
MM = 금액+NetProfit;
buy("b1",OnClose,def,Floor(MM/C));
이렇게 하면 복리로 투자가 되는걸로 알고 있습니다.
백테스트는 이렇게 하면 되는데 실투자 할때 궁금한 점이 있습니다.
전략실행으로 1만봉을 기준으로 실행을 시키면 오늘 기준이 아니라 그전 기준으로 매수가 된 기록이 나오고 그렇다면 오늘 기준으로는 1만봉전에 비해 복리로 실투가 들어가나요?
그리고 1만봉앞에가 없어지면 어떻게 되나요? 오늘거래가 이뤄지고 나서 내일거래는 오늘 손익에 따라 결정이 되나요?
또한 혹시 시스템이 멈춰서 재실행하게 되면 그때 복리로 하기 위해서는 어떻게 해야 하나요?
실투를 복리로 하기 위한 방법에 대해 알려주시면 감사하겠습니다.
2018-09-02
221
글번호 121804