커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7391
글번호 230811
답변완료
단기볼린져 색변화
안녕하세요
아래식은 단기볼린져 색변화식입니다
120틱과 500틱의 이볼린져지표를 하나의 차트에서 겹쳐 나타나게 하고싶습니다
색은 다른색으로 구별하고 120,500틱은 선택 가능하고요
부탁드립니다
input : P(5),dv(2);
var : Price(0),BBmd(0),BBup(0),BBdn(0),diff(0);
Price = (C+H+L)/3;
BBmd = ma(Price,P);
BBup = BBmd + std(Price,5)*dv;
BBdn = BBmd - std(Price,5)*dv;
diff = BBup-BBdn;
if BBmd > BBmd[1] then
plot1(BBmd,"중앙",RED);
Else
plot1(BBmd,"중앙",BLUE);
if diff > diff[1] then{
plot2(BBup,"상단",red);
plot3(BBdn,"하단",red);
}
else{
plot2(BBup,"상단",BLUE);
plot3(BBdn,"하단",blue);
}
감사합니다
2016-05-20
155
글번호 98276
답변완료
문의
자주뵙읍니다
수식 수정과 수식하나더문의합니다
var : diff(0,data2);
diff = data2(bids-asks);
if crossup(diff,1000) Then
buy();
if CrossDown(diff,0) Then
exitlong();
if CrossDown(diff,-1000) Then
sell();
if crossup(diff,0) Then
ExitShort();
위수식을 미니가아닌 선물지수에서 매매되게부탁합니다
20이평돌파매수후 주가가20이평을이탈바로매도진입이아니라 이탈10틱되면은매도로전환
매도후20이평을돌파하후10틱이되면은매수전환식부탁합니다
2016-05-20
125
글번호 98275
답변완료
문의
1. 종목검색식을 만들어서 이를 예스스팟으로 관심종목으로 자동편입되게 하는게 목적입니다.
파워종목검색으로 할때 검색버튼을 매번 눌러줘야 하는 불편함을 없애는게 목적입니다.
키움증권과 같이 실시간 검색화면이 있으면 좋으련만 이게 안되니 예스스팟의 힘을 빌려서라도 해결하고자 합니다. 추후 개선될 여지는 없는 것인지요?
2. 3111화면의 체결강도란이 있는데 체결강도가 200% 이상인 수식을 아래수식에다가 추가 부탁드립니다.
if ( (CLOSE > OPEN)
AND (CLOSE > M1)
AND (CLOSE > M2)
AND (M1 > M2)
AND (V >= (MA(V,5)[1] * 2)) // 이전 N개봉의 평균거래량보다 200% 이상
) then
{
FIND(1);
}
3.. 아래는 예스스팟 수식인데 30초마다 검색하여 관심종목에 편입시키고자 하는데 처음에만 되고 그 이후에는 안되더군요. 처음 5종목이 관심20160520에 편입되었다고 하면 그 이후에 검색되는 것은 어떻게 처리가 되는지요? 종목이 계속 누적되게 처리를 하고자 하는데 수정부탁드리겠습니다.
또한, 종목이 계속 검색되어서 3201화면에서도 자동으로 리프레쉬가 되는지요?
감사합니다.
var cond;
function Main_OnStart()
{
//Main.MessageLog("----------------------------------------------------------------------------------------");
Main.MessageLog("+STOCK FIND[1M] GETs READY!");
//Main.MessageLog("----------------------------------------------------------------------------------------");
var d = new Date();
var YYYYMMDD = d.getFullYear() * 10000 + (d.getMonth() + 1) * 100 + d.getDate();
var HHMMSS = d.getHours()*10000 + d.getMinutes()*100 + d.getSeconds();
cond = false;
if (HHMMSS < 145000)
{
Main.SetTimer(1, 30000); // 30s
}
}
function Main_OnTimer(nEventID)
{
var d = new Date();
var YYYYMMDD = d.getFullYear()*10000 + (d.getMonth()+1)*100 + d.getDate();
var HHMMSS = d.getHours()*10000 + d.getMinutes()*100 + d.getSeconds();
if (nEventID == 1 && cond == false && HHMMSS >= 090000)
{
//cond = true;
Main.ReqPowerSearch("#PowerSearch");
}
}
function Main_OnRcvItemList(aItemList, nCount)
{
var d = new Date();
var YYYYMMDD = d.getFullYear()*10000+(d.getMonth()+1)*100+d.getDate();
var HHMMSS = d.getHours()*10000+d.getMinutes()*100+d.getSeconds();
Main.SendInterests("관심" + YYYYMMDD, aItemList);
//Main.MessageLog("----------------------------------------------------------------------------------------");
Main.MessageLog("+Send Interests [" + d.getHours() + ":" + d.getMinutes() + ":" + d.getSeconds() + "]");
//Main.MessageLog("----------------------------------------------------------------------------------------");
}
2016-05-20
313
글번호 98274
곽민수 님에 의해서 삭제되었습니다.
2016-05-20
3
글번호 98273
답변완료
문의드립니다
당일의 중앙선을 만들려고 하는데 dayhigh,daylow로잘안되네요
수식좀 부탁드려요
(dayhigh()+(daylow()/2가 아닌가요?
2016-05-20
138
글번호 98272
답변완료
문의드립니다.
1.알에스아이 65상향돌파 매도 1개 매도진입한 후에 최초진입가에서 50틱 오르면 매도1개 또진입
최초진입가에서 100틱 오르면 매도1개 또진입. 최초진입가에서 150틱 오르면 매도1개 또진입.
알에스아이 35하향돌파 매수 1개 매수진입한 후에 최초진입가에서 50틱 내리면 매수1개 또진입
최초진입가에서 100틱 내리면 매수1개 또진입. 최초진입가에서 150틱 내리면 매수1개 또진입.
오전 7시 시작 새벽 5시50분 종료.
부탁드리겠습니다. 수고하세요.
2016-05-20
138
글번호 98271
답변완료
시스템식 문의드립니다.
안녕하세요.
이평선을 기반으로 해서 시스템식을 구현하고 있는데 이상하게 거래되는 부분이 있어서 문의드립니다.
그림과 같이 기본 Sell() API를 사용하여 구현한 매도식에서 매도 진입 후 5틱 정상청산 직후
시스템에서 바로 다시 매도를 진입하는것을 확인하였습니다.
시스템 식은 아래와 같습니다.
17일선이 40일선보다 위에 있으면서 현재봉이 40일선을 뚫을때 매도진입하도록 한건데
그림에서 보면 처음 진입은 잘 하였으나 청산과 동시에 다시 매도 진입이 들어가는 걸 볼 수 있는데요. 차트상으로 전혀 들어갈수 없는 타이밍인데 청산과 동시에 다시 진입이 됩니다.
시스템 종료후에 다시 적용하면 처음 1회꺼만 진입과 청산을 잘 하였다는식으로 나오는데 어떤 문제인지 문의드립니다.
Input : shortPeriod(17), longPeriod(40)
value17 = ma(C, shortPeriod);
value40 = ma(C, longPeriod);
# 매도 및 청산
If((value17 > value40) and (CrossDown(C, value40))) Then
{
MessageLog("매도 옵션 진입 현재가 : %.2f", C);
Sell("매도옵션1");
SetStopProfittarget(Plus, PointStop);
SetStopLoss(Minus, PointStop);
}
도움 부탁드립니다.
2016-05-20
227
글번호 98270
답변완료
시가표시
안녕하세요?
당일만 시가라인을 표시하고 싶습니다.
즉, 장시작 9시의 가격을 장이 끝나는 시간(15:00)까지만 표시하고 싶습니다.
전날 시가와 이어지면 안됩니다.
또 시가라인에 호가가 높으면 색깔로 표시할 수 있도록 지표식 부탁드립니다.
색깔 표시는 어떻게 하는지 알고있습니다.
if date != date[1]
then
{
if (stime == 090000 or (stime > 090000 and stime[1] < 150000)) Then
plot1(dayopen);
}
plot2(ma(c,1));
이렇게 하니깐 안되네요..
2016-05-19
158
글번호 98269
답변완료
수식부탁합니다.
수고하십니다. 시스템수식부탁합니다.
Envelope 상한선을 뚷고갔다가 상한선으로 들어왔을때 매도
하한선을 뚷고내려갔다가 하한선안으로 들어왔을때 매수
수식입니다.
기존의 수식에다
1.장시작시간(10:15)과 장마감시간(당일17:10) 강제청산
2.장시작시간(07:00)과 장마감시간(익일06:00) 강제청산식을 추가하고싶습니다.
input : P(20),Percent(1);
var : upv(0),dnv(0);
upv = EnvelopeUp(P,Percent);
dnv = EnvelopeDown(P,Percent);
if CrossDown(c,upv) Then
sell();
if crossup(c,dnv) Then
buy();
2016-05-19
131
글번호 98268