커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5560
글번호 230811
답변완료
지표값 관련 질문입니다.
지표를 만들고 지표를 차트에 추가한후,
지표설정에서 "마지막 지표값 표시"를 체크하면 지표값이 나오잖아요.
거기서 지표값이 나오는데,
형식을 지정하는 방법이 있나요?
20000326
>> 20,000,326
이런식으로요...
수치가 크면 빠르게 알아보기가 힘들어서요.
2019-03-29
328
글번호 127463
답변완료
해외선물입니다. 만기 일주일전에 청산하는 수식~~
해외선물입니다.(쿠루드오일)
매수후 청산이 좀 길게 되는 경우가 있어서
매월 특정일(만기일)되기 일주일전에 무조건 청산하는 수식을 반영할수 있게 아래식에 반영 바람니다.
Input: Period1(3),Period2(3),LPercent(13),SPercent(94),최대누적횟수(5);
input : N1(1),N2(10);
Input : P1(5),P2(4);
Input : P3(0.6);
var : MoneyFlow1(0),MoneyFlow2(0);
var : cnt(0),sum1(0),sum2(0),avg1(0),avg2(0),avg3(0),T(0),mav2(0),mav3(0),value(0),RSIV(0),Simri(0),CCIv(0);
var : sum3(0),Tcond(false);
MoneyFlow1 = MFI(Period1);
MoneyFlow2 = MFI(Period2);
if DayClose(N2) > 0 Then
{
sum1 = 0;
sum2 = 0;
for cnt = 0 to N2-1
{
if cnt < N1 Then
sum1 = sum1 + DayClose(cnt);
if cnt < N2 Then
sum2 = sum2 + DayClose(cnt+1);
}
avg1 = sum1/N1;
avg2 = sum2/N2;
T = 0;
if avg1 >= avg2 Then
T = 1;
if avg1 < avg2 Then
T = -1;
if T>=0 Then
{
if MoneyFlow1 < LPercent and c<c[1] and MaxEntries < 최대누적횟수 Then
buy("b");
}
if MarketPosition == 1 and MoneyFlow2 >= SPercent Then
ExitLong("x",OnClose,def,"",min(CurrentContracts, Ceiling(MaxContracts*P3)),2);
SetStopProfittarget(P1,PercentStop);
SetStopLoss(P2,PercentStop);
}
2019-03-28
367
글번호 127462
목마와숙녀 님에 의해서 삭제되었습니다.
2019-03-28
0
글번호 127457
답변완료
큰것지표
* 맛점 하셨나요^^
* 아래 수식에서 5개중에 3개 이상 지표좀 설정 해주십시요.
var99 = highest(H,50);
var98 = highest(H,40);
var97 = highest(H,30);
var96 = highest(H,20);
var95 = highest(H,10);
"이것 5개중에 3개 이상 이면 ok!" 명령어좀 부탁 드립니다.
* 고맙 습니다.
2019-03-28
349
글번호 127453
답변완료
N point 변화시 봉갯수
안녕하세요
다음 지표수식 부탁드립니다.
연결선물 1분 완성봉 기준으로
최근 완성봉으로부터 거슬러서 분봉고저기준 1 point 이상으로 경과된 봉의 갯수를
지표로 표시하고 싶습니다.
---> 1분봉 완성시마다 값 표시
---> 예를들면, 이전 완성봉 기준에서 역으로 21개봉전까지의 고저가 1.05 point 일 경우
21개 라고 지표로 표시 (분봉기준이므로 고저가 1 point 초과할 수 있음)
---> 전일종가 당일시가 갭이 1 point 이상이면 지표값은 1 (즉, 1개봉)
---> 변동 point는 변수 처리 요망
이상입니다.
감사합니다.
2019-03-28
363
글번호 127448
답변완료
문의드립니다.
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 이전 수식 재 질문입니다. .
코딩 감사합니다.
아래 코딩에서 현재 자산 부분을 누적수익으로 할 수 있을까요.
아래 것은 실제 매매에선 사용할 수 있을 것 같은데요. (초기계좌자산을 바꾸면 되니까)
생각해보니 시뮬에서는 저렇게 하면 계약수가 고정되서 단일계약에 자금관리가 쓸모 있는지 알 수는 없겠더라구요.
저기 초기계좌자산 +에다가 뭔 함수를 더해야하는지 잘 모르겠습니다.
원수식
input : 초기계좌자산(100000000),고정매매가능횟수(3),손절금액(500000);
var : 현재자산(0),매매별금액리스크(0),매매계약수(0),entry(0);
현재자산 = 초기계좌자산 + Floor((2.0)/PriceScale)*PointValue;
매매별금액리스크 = 현재자산/고정매매가능횟수;
매매계약수 =매매별금액리스크/손절금액;
if bdate != bdate[1] Then
entry = 0;
if MarketPosition != 0 and MarketPosition != MarketPosition[1] Then
entry = entry+1;
var1 = ma(C,5);
var2 = ma(C,20);
if crossup(var1,var2) and entry < 고정매매가능횟수 Then
buy("b",OnClose,def,매매계약수);
if MarketPosition == 1 and CrossDown(var1,var2) Then
ExitLong("bx");
2.
그리고 Floor((2.0)/PriceScale)*PointValue;
이 부분은 2를 틱가치로 나눈 것을 반올림하고 PointValue(PriceScale을 금액으로 환산)를 곱했는데요.
이걸 왜 초기자산에다 더하는지 잘 모르겠습니다.
2019-03-28
386
글번호 127445
답변완료
수식 수정부탁드립니다.
안녕하세요?
아래의 진입조건에서 연달아 봉이 나오는 조건 (또는 어떠한 상황에서든지), 도지(시가와 종가가 같은봉)가 끼이더라도 허용 되도록 하고싶습니다.
예를들어서 음봉 2개가 나오라는 주문이라면, 음봉 도지 도지 음봉 이렇게 나와도 상관없도록...
추가 부탁드립니다.
감사합니다.
input : 매도양봉길이(5),매도음봉길이(5),매도양봉갯수(5),매도음봉갯수(3);
input : 매수양봉길이(5),매수음봉길이(5),매수음봉갯수(5),매수양봉갯수(3);
input : 손절틱수(10),익절틱수(10);
var : idx(0);
if bdate != bdate[1] Then
idx = 0;
Else
idx = idx+1;
if MarketPosition == 0 and
idx >= 매도양봉갯수+매도음봉갯수+1 and
countif(C==O+PriceScale*매도양봉길이,매도양봉갯수)[1] == 매도양봉갯수 and
countif(C == O-PriceScale*매도음봉길이,매도음봉갯수) == 매도음봉갯수 Then
sell();
if MarketPosition == 0 and
idx >= 매수음봉갯수+매수양봉갯수+1 and
countif(C==O-PriceScale*매수음봉길이,매수음봉갯수)[1] == 매수음봉갯수 and
countif(C == O+PriceScale*매수양봉길이,매수양봉갯수) == 매수양봉갯수 Then
Buy();
SetStopLoss(PriceScale*손절틱수,PointStop);
SetStopProfittarget(PriceScale*익절틱수,PointStop);
2019-03-28
338
글번호 127444
답변완료
시스템
안녕하세요 미리 감사드려요
아래식을 돌려보니 성능보고서가 안나옴니다
Data1의 현재가와 data2의 현재가가 충돌이 있는건지 살펴봐 주시면 감사하겠습니다
Input : shortPeriod(12), longPeriod(26);
Var : value(0);
value1 = MACD(shortPeriod, longPeriod);
if C > value1 then {
value2 = C;
value3 = value2[1];
value4 = index;
}
if C < value1 then {
value12 = C;
value13 = value12[1];
value14 = index;
}
if data2(c<= lowD(1)+(highD(1)-LowD(1))*(1/2)) Then{ if value3 < value13 And value2 > value13 and CrossuP(C, value1)
then buy();
}
if data2(c>= lowD(1)+(highD(1)-LowD(1))*(1/2)) Then{ if value3 < value13 And value12 < value3 and Crossdown(C, value1)
then sell();
}
2019-03-28
355
글번호 127443
답변완료
피보나치 문이
안녕하세요?
차트에 피보나치 수식을(Fibonacci Retracement) 수동으로 긋고나서
특정 선(61.8% 선)에 닿았을때 신호가 표시되도록 할 수 있나요?
2019-03-28
406
글번호 127436