커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7425
글번호 230811
답변완료
시스템질문!
input : P(20),시작시간(15000),끝시간(0),목표수익틱수(10);
var : T(0),Tcond(false);
var1 = ma(C,P);
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then
Tcond = true;
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then{
Tcond = false;
exitlong("bx");
ExitShort("sx");
}
if L > var1 Then
T = 1;
if H < var1 Then
T = -1;
if Tcond == true then{
if T == 1 and T[1] == -1 Then
Buy();
if T == -1 and T[1] == 1 Then
Sell();
if MarketPosition == 1 Then
exitlong("매수10틱청",AtStop,EntryPrice+PriceScale*목표수익틱수);
if MarketPosition == -1 Then
ExitShort("매도10틱청",AtStop,EntryPrice-PriceScale*목표수익틱수);
}
국내선물에 좀 해볼려고합니다 시간설정 이 되어있어서 신호가 3시이후라;;ㅎㅎㅎ
아침 9시부터 신호가 안뜨는 현상 발생!^^ㅎㅎ...
1. 신호 시작 되는시간을 없애고 아침9시마다 장시작하면 그날그날 맞는 당일신호로
될까요^^?? 전날에 볼린져밴드가 연결이안되고 그날 그날 장시작하자말자 나오는신호^^
감사합니다^^항상^^
2016-05-02
165
글번호 97657
답변완료
문의드립니다
안녕하세요
첨부파일은 지그재그 지표인데요
똑같은 형태로 봉개수 표시 가능한가요?
가능하면 선은 점선으로, 숫자표시는 캔들하고 조금 간격이 있게 표시되도록 수식 부탁드립니다
항상 감사합니다^^
2016-05-02
233
글번호 97656
답변완료
수식질문드립니다
input : P(20),시작시간(15000),끝시간(0),목표수익틱수(10);
var : T(0),Tcond(false);
var1 = ma(C,P);
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then
Tcond = true;
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then{
Tcond = false;
exitlong("bx");
ExitShort("sx");
}
if L > var1 Then
T = 1;
if H < var1 Then
T = -1;
if Tcond == true then{
if T == 1 and T[1] == -1 Then
Buy();
if T == -1 and T[1] == 1 Then
Sell();
if MarketPosition == 1 Then
exitlong("매수10틱청",AtStop,EntryPrice+PriceScale*목표수익틱수);
if MarketPosition == -1 Then
ExitShort("매도10틱청",AtStop,EntryPrice-PriceScale*목표수익틱수);
}
이대로 하니깐 오일,금,유료는 다뜨는 방면
에센피?가 우리나라 기준으로 시간을했더니 차트상 3시이후 로 뜨다보니깐 밤에 뜨는신호가 되더라구요^^... 혹시 에센피는 따로변경을해줘야되는지 궁금합니다..
4개 가 같이뜨면좋겠거든요.ㅠ.ㅠ ㅎㅎㅎ
그리고 다른건 (20) 을 수정하여 12로 해도 신호가 다뜨는데
에센피는 (12)를 설정해줘야 신호가뜨는 현상이 발생하네욯ㅎ...
에센피는 (20)을 설정해주면 아예 거래 몇번되지 않는 신호가 발생합니다..ㅎㅎ
신호뜨는시간대가 우리나라 기준 으로맞춰둔건데...사진상 보시면 시간이 안맞게 뜨네요..
2016-05-02
210
글번호 97655
답변완료
시스템식 문의 드립니다...
수고가 많으시죠...^^
이평선 60일 120일 240일 관련식입니다...
1 이평선 60일 > 120일 > 240일 이 정배열이면 매수
이평선이 60일 < 120일 OR 60일 < 240일 매수청산
2 이평선 60일 < 120일 < 240일 이 역배열이면 매도
이평선이 60일 > 120일 or 60일 > 240일 매도청산
이상입니다...
수고하세요
2016-05-02
165
글번호 97652
답변완료
수식 추가 부탁드립니다.
아래의 파동선식에서 저점이 높아졌을 때와 고점이 낮아졌을 때의 수식을 작성할수가 없군요.저점이 높아졌을 때 하늘색 수평선(굵기3)으로 알려주고
고점이 낮아졌을 때 검은색 수평선(굵기3)으로 알려주는 수식을 추가 부탁드립니다.
감사합니다.
========================================================================================
Input:length(12);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),
Text1(0),처리구분("");
Array:고점[10,2](0),저점[10,2](0); //가격,위치
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and
Lowest(L,length) == L and lastLoVal <> L Then
{
If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then
처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then
처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],
sDate[eBar],sTime[eBar],고점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],
NumToStr(고점[1,1],4));
Text_SetStyle(Text1, 2, 1);
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],
sDate[eBar],sTime[eBar],저점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],
NumToStr(저점[1,1],4));
Text_SetStyle(Text1, 2, 0);
}
}
TL_SetSize(TL1,3);
TL_SetColor(TL1,CYAN);
=====================================================================================
감사합니다.
2016-05-03
173
글번호 97651
답변완료
재 질문입니다.
수고가 많으십니다.
47297번의 재 문의 입니다.
작성해 주신 수식으로 프로그램을 돌려 보니 잘 맞지 않아
다시 요청 합니다.
다소 번거롭겠지만 당초것과 변경된 내용을 만들었습니다.
그리고 조건이 나왔을때 차트모습도 캡쳐해 올렸으니 참고해 보세요.
항상 친절하고 신속하게 처리해 주심 감사 드립니다.
2016-05-03
146
글번호 97650
답변완료
지표식 부탁해요
삼성전자와 코스피200을 같이 띄어 놓고 이격도를 만들수는 없다는 답변을 받았습니다
그럼 삼성전자 차트 하나만 올리고 코스피200 또는 선물 차트를 같이 올리지 않고 수식으로 데이터만 가지고 와서 삼성전자와의 이격도를 산출 하는 방법을 알려 주세요
감사합니다.
2016-05-02
170
글번호 97649
답변완료
부탁 드립니다.
47496 재질문 입니다.
예를 들어 1분봉 차트에서
점1)->지정된 시간의 종가1(예,20160428일 180000~180100사이에 생성된봉의 종가)
점2)->지정된 시간의 종가2(예,20160428일 235000~235100사이에 생성된봉의 종가)
점1)과 점2) 연결하는 선을 그을수 있겠는지요?
주) 가능하다면 점1과 점2를 지나고 현재 시간까지의 연장선을 추가
미리 감사와 경배 드립니다.
참고수식)
Var : cond5(false);
var99=20160428;
var21=200000;
var22=200100;
if sdate == var99 and (stime == var21 or (stime > var21 and stime[1] < var21)) then{
cond5 = true;
}
if stime == var22 or (stime > var22 and stime[1] < var22 ) Then
Cond5 = false;
if cond5 == true then{
2016-05-03
145
글번호 97648
답변완료
47932재질문좀드리겠습니다^^
주문함수의 이름을 가변으로 가져갈수는 없습니다.
목표수익틱수는 외부변수로 설정해 드립니다.
해당 틱수로 변경하시면 청산의 이름을 직접 변경하셔야 합니다.
input : P(20),시작시간(150000),끝시간(0),목표수익틱수(10);
var : T(0),Tcond(false);
var1 = ma(C,P);
if stime == 시작시간 or (stime > 시작시간 and stime[1] < 시작시간) Then
Tcond = true;
if stime == 끝시간 or (stime > 끝시간 and stime[1] < 끝시간) Then{
Tcond = false;
exitlong("bx");
ExitShort("sx");
}
if L > var1 Then
T = 1;
if H < var1 Then
T = -1;
if Tcond == true then{
if T == 1 and T[1] == -1 Then
buy();
if T == -1 and T[1] == 1 Then
sell();
if MarketPosition == 1 Then
exitlong("매수10틱청",AtStop,EntryPrice+PriceScale*목표수익틱수);
if MarketPosition == -1 Then
ExitShort("매도10틱청",AtStop,EntryPrice-PriceScale*목표수익틱수);
}
작성해주신 거 정말감사합니다^^
다름이아니라..적용해본결과 확정신호 후 10틱청산 이라는부분이 조금 애매한듯 해서
재질문드립니다 매수는 봉의최고점에서 매도는 봉의최저점에서 10틱을 잡아야되는거같은데
매수는,봉의최저점,매도는,봉의최고점에서 현제 10틱으로해서 청산 표시가 나타나는듯하여
재질문드립니다^^수정좀 부탁드리겠습니다~
혹..매수든 매도든 10틱만 표시되게 말고 10틱,20틱 은 같이는 구현이 불가능할까요~?
현제는 목표수익틱수가 10틱만 있으니 20틱까지만이라도 표시가 됬으면해서요^^..
아 그리고 청산 좀 추가좀부탁드리겠습니다 매수를 진입했을경우 반대 포지션으로 빠질경우
화살표 밑에 부분에서 같이 청산표시(스위칭)할경우 같이 생겼으면 좋겠습니다
예시:매수 진입중 반대로 매도화살표가뜨면 매도화살표 위든밑에든 손절 이라는 단어가
드러갔으면좋겠습니다
오늘하루도 즐거운하루되시기를바라겠습니다 항상감사합니다^^
2016-05-03
175
글번호 97647