커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7542
글번호 230811
답변완료
시스템변환
감사드립니다
아래 시스템식(2-77) 변환 부탁드립니다
period1= 5,
MA1= 10
shortPeriod = 60
longPeriod = 130
sigPeriod = 9
PERIOD2 = 20
A=PVI(C);
B=eavg(A,PERIOD1);
F=eavg(A,PERIOD2);
G=MACD(shortperiod,longperiod);
I=eavg(G,sigperiod);
매수
IF(c>=dayopen(), (A>B and eavg(C,5)>EAVG(C, 10) and G>I),
IF((c<DAYOPEN()*0.5 AND C>=(daylow()*1.5)),
(A>F and eavg(C,5)>EAVG(C, 10) and G>0), 0));
매도
A<B and eavg(C,MA1)>C and Crossdown(G,I);
2013-08-29
165
글번호 66944
답변완료
수정관련^^
아래수식은 지난번 도움 주셧던 수식 인데요 0.5에 도달 해서 한번 소리가 나면 다시 그 가격(위치)에 와도 소리가 나지 않게 수정 바랍니다.
*상기 내용을 정리 하면 하루에 한번만 소리가 나계 끔 도와 주시길 원 합니다. 꾸벅^*^
오늘도 행복한 날 되시고 좋은 일들로만 가득 하시길 빕니다.
If marketposition == 1 Then {
#0.50수익발생
if H >= EntryPrice+0.50 Then
PlaySound("C:₩Users₩SEC₩수익보존알림사운드₩수익보존sound.wav");
}
If marketposition == -1 Then {
#0.50수익발생
if L <= EntryPrice-0.50 Then
PlaySound("C:₩Users₩SEC₩수익보존알림사운드₩수익보존sound.wav");
}
2013-08-29
174
글번호 66942
답변완료
질문입니다.
여러개의 진입식중 3개의 진입식에 한해 동일한 진입명칭을 하루 1회만 진입할수 있도록 하려면 어떻게 수식을 작성해야 하는지요? 아래와 같이 진입식에 entryname함수를 넣어 주면 되는 것이 아닌가요?
!(EntryName(1)=="1매수" or EntryName(1)=="2매수" or EntryName(1)=="3매수")
2013-08-29
155
글번호 66940
답변완료
수식확인 부탁드립니다.
안녕하세요
[질문1]
이전 질문에서 알려주신 매도에 대한 답변수식을 적용하면,
수익/손절률을 조절함에 따라 매수조건에 영향을 미치고 있습니다.
가령 아래 수익1(2),손실1(2)를 수익1(1),손실1(1)로하면
매수 들어가는 횟수가 늘어납니다.
단지 매수한것을 어떻게 매도할 것인지에 대하여 적용수식인데,
매수에 영향을 미치는것이 이상합니다.
ExitLong와 ExitShort가 어떤 영향을 미치고 있는 것인지...
제가 현재 쓰고 있는 수식은 위수식과 덧붙여서 아래와 같습니다.
확인 부탁드립니다.
input : 투입금액(1000000);
#kospi
if CodeCategory == 1 Then{
if BasePrice < 50000 Then #기준가 5만원 미만
var10 = int(int((투입금액*0.25)/C)/10)*10;
Else #5만원 이상
var10 = int((투입금액*0.25)/C);
}
#kosdoq
if CodeCategory == 2 Then
var10 = int((투입금액*0.25)/C);
if stime < 10000 and 매수조건 Then{
buy("B",OnClose,def,var10); //Buy("신호명", 신호타입, 가격조건, 수량)
}
input : 수익1(2),손실1(2),수익2(1),손실2(1);
if MarketPosition == 1 Then{
if stime < 100000 Then{
ExitLong("BP1",atlimit,EntryPrice*(1+수익1/100));
ExitLong("BL1",AtStop,EntryPrice*(1-손실1/100));
}
if stime >= 100000 Then{
ExitLong("BP2",atlimit,EntryPrice*(1+수익2/100));
ExitLong("BL2",AtStop,EntryPrice*(1-손실2/100));
}
}
if MarketPosition == -1 Then{
if stime < 100000 Then{
ExitShort("SP1",atlimit,EntryPrice*(1-수익1/100));
ExitShort("SL1",AtStop,EntryPrice*(1+손실1/100));
}
if stime >= 100000 Then{
ExitShort("SP2",atlimit,EntryPrice*(1-수익2/100));
ExitShort("SL2",AtStop,EntryPrice*(1+손실2/100));
}
}
[질문2]
간단하게 아래처럼 쓰면 같은 효과를 볼수 있나요?
10시이전엔 수익/손절 2%적용, 그이후 매수한 것이 남아 있으면 수익/손절 1%로 적용
1)번 방안
if stime < 100000 Then{
SetStopLoss(2,PercentStop);
SetStopProfittarget(2,PercentStop);
}
else {
SetStopLoss(0);
SetStopProfittarget(0);
}
if stime >= 100000 Then{
SetStopLoss(1,PercentStop);
SetStopProfittarget(1,PercentStop);
}
2)번 방안
if stime < 100000 Then{
SetStopLoss(2,PercentStop);
SetStopProfittarget(2,PercentStop);
}
else {
SetStopLoss(1,PercentStop);
SetStopProfittarget(1,PercentStop);
}
어떤것이 맞나요?
확인 부탁드립니다.
[질문3]
계속 아래의 내용으로 적용하다가 2시 40분이 되면,
아래 내용을 적용하지 않고, 현재가로 매도하도록 할 수 있나요?
SetStopLoss(2,PercentStop);
SetStopProfittarget(2,PercentStop);
감사합니다.
2013-08-29
175
글번호 66936
답변완료
두가지 부탁합니다
1. 엔벨로프 (20,10) 적용
엔벨 중심선과 하단선 사이 주가 위치하고 / 하단선 위 3% 내 주가 위치
주가 5천원 ~ 3만원 사이 / 20이이평선 매매대금 10억 이상 종목 검색식 부탁합니다
2. 최근 20일 동안 기관 매수가 매도보다 높은 종목 검색식 부탁합니다
2013-08-29
223
글번호 66935
회원 님에 의해서 삭제되었습니다.
2013-08-29
4
글번호 66934
답변완료
지표식 문의드립니다.
안녕하세요.
지표식 문의 드립니다.
분봉차트에서 accumn(upvol,dayidex+1)을 하면 당일의 첫봉부터 시작해서 upvol을 합산하여 차트에 시간별로 표시 해 줍니다.
당일 첫봉 기준이 아니라 전일 정오(12시)를 기준으로 upvol을 누적합산하고 싶습니다.
당일 정오가 되면 다시 0부터 시작해서 합산하는 방식으로 차트에 표시해 보고싶습니다.
항상 친절한 답변 감사합니다.
2013-08-28
152
글번호 66933
느림 님에 의해서 삭제되었습니다.
2013-08-28
21
글번호 66932
답변완료
문의드림니다
다음수식을 참조차트에서 사용할려하는데 그대로 참조차트(data3)로 변환부탁 드림니다
var : cond11(0),cond12(false),cond13(false),cond14(false) ;
cond11 = ((dayhigh(2)-dayopen(2))+((dayopen(1)-daylow(1))/4;
cond12 = dayhigh-daylow <7 and and close-dayopen< 3p ;
cond13 = dayopen-daylow(1) < 10
cond14 = ((cond13 and (ttime <130000) or (DayOpen-dayhigh(1)< 3 And ttime<140000))
If MarketPosition == 0 Then {
If Cond12 And Cond14 And close-dayopen<cond11 then {
buy("매수",Atmarket);
}
}
2013-08-29
157
글번호 66931