커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6143
글번호 230811
답변완료
매일매수에서 일주일에 1회 매수 (수요일)
국내주식
60분봉 차트
아래 수식으로 하면 매일 10시에 1주씩 매수되는 식입니다.
아래수식에서 매수만 매주 수요일 10시에 1주씩 매매되는 수식 부탁드릴께요...
다른 수식은 동일합니다.
input : 매수시간(100000),매도시간(140000),최대투자금액(3000);
input : 청산수익률(10);
input : 분할매도퍼센트(5);
if sTime == 매수시간 Then
{
If AvgEntryPrice*CurrentContracts < 최대투자금액*10000 Then
Buy("b",OnClose,Def,1);
}
if sTime == 매도시간 Then
{
if C > AvgEntryPrice*(1+청산수익률/100) Then
ExitLong("bx",OnClose,Def,"",Floor(CurrentContracts*분할매도퍼센트/100),2);
}
2022-06-09
1133
글번호 159716
배움이 님에 의해서 삭제되었습니다.
2022-06-09
93
글번호 159714
답변완료
수식 부탁드립니다.
1.data1의 스토캐스팅 data2의 스토캐스팅 같이 나타내는 지표수식
2.data1과 data2의 스토캐스팅의 이격이 (변수)이상으로 벌어지면 표시되는 시스템수식
2022-06-09
1048
글번호 159711
답변완료
상향돌파 추가문의
안녕하세요.
하기 답변잘 들었습니다. 추가 문의 있어 작성합니다.
아래와 같이 답변하신 부분에서
'if stime<특정시간 then
buy("돌파매수",atstop, ma(C,5))
위 내용은 상향돌파가 아닙니다.
봉완성시 if조건이 만족하면 완성봉의 이평을 셋팅하고 다음봉에서 셋팅된 값과
같거나 큰값이 발생하면 즉시 매수하는 내용입니다......' 라고 해주셨습니다.
저렇게 작성한게 상향돌파가 아닙니다만, 저조건을 최초로 만족하는 경우(즉, 당일에 최초로 다음봉에서 이평값(또는 어떤 고정된값)보다 큰 값이 나오면(즉 돌파되면) 주문이 나갈것이기 때문에 일종의 돌파로 볼수 있지 않을까요? (그 다음 만족봉들은 피라미딩 미허용으로 제거가능)
백테스트의 결과도 약간의 차이를 보여주지, 전혀 다른 결과를 보여주지도 않습니다.
돌파전략에서 저렇게 if문에서 조건을 빼는경우 놓치는 부분이 과연 있을까요?
고견 부탁드립니다~
(만일, 당일첫봉에서 돌파기준값보다 높게 시작하는 경우에는 바로 조건만족되어 주문이 나가게 되고 돌파기준값보다 높게 체결이 될수는 있을거 같긴 하네요...이런 경우를
제외하고 정상적으로 돌파기준가보다 낮게 시작해서 높아지는 경우는 위와같이 작성해도
괜찮지 않을까요?)
------------------------------------------------------------------
안녕하세요
예스스탁입니다.
1
if stime<특정시간 and crossup(c,ma(C,5)) then
buy("돌파매수",atmarket)
봉완성시 종가가 5이평을 상향돌파하면 다음봉 시가에 매수입니다.
crossup(A,B)
상향돌파함수는 풀어서 작성하면 아래와 같습니다.
A > B and A[1] <= B[1]
A가 B보다 같거나 작은상태에서 현재봉에서 커지면 조건충족입니다.
2
if stime<특정시간 then
buy("돌파매수",atstop, ma(C,5))
위 내용은 상향돌파가 아닙니다.
봉완성시 if조건이 만족하면 완성봉의 이평을 셋팅하고 다음봉에서 셋팅된 값과
같거나 큰값이 발생하면 즉시 매수하는 내용입니다.
atstop은
buy나 exitshort에 사용되면
봉완성시 가격을 셋팅하고 다음봉 가격 중 셋팅된 값 이상의 값만 발생하면 즉시 신호발생합니다.
반대로 sell이나 exitshort에 사용되면
봉완성시 가격을 셋팅하고 다음봉 가격 중 셋팅된 값 이하의 값만 발생하으면 즉시 신호발생합니다.
atlimit은 atstop과 반대로 가격을 체크합니다.
buy나 exitshort에 사용되면
봉완성시 가격을 셋팅하고 다음봉 가격 중 셋팅된 값 이하의 값만 발생하면 즉시 신호발생합니다.
반대로 sell이나 exitshort에 사용되면
봉완성시 가격을 셋팅하고 다음봉 가격 중 셋팅된 값 이상의 값만 발생하으면 즉시 신호발생합니다.
즐거운 하루되세요
> 건곤대 님이 쓴 글입니다.
> 제목 : if조건식 가격조건유무
> 안녕하세요.
간단히 상향돌파하는 전략에서
if stime<특정시간 and crossup(c,ma(C,5)) then
buy("돌파매수",atmarket)
if stime<특정시간 then
buy("돌파매수",atstop, ma(C,5))
으로 하는경우 백테스트상 약간의 차이가 발생하는 걸 발견했습니다만, (후자가 진입이 좀더 늘어남)
상방돌파전략의 특성상, atstop으로 쓰는것이 더 맞을것 같기는 합니다만(가격조건만 만족되면 바로 주문나가므로...)
차이에 대해서 좀 설명부탁드립니다~
2022-06-09
1394
글번호 159708
답변완료
수식 부탁드립니다
수식 부탁드립니다
var2 = ma(c,20);
IF CROSSUP(C,VAR2) // C 가 var2를 크로스 할때 50%이상 크로스 조건
THEN
BUY("A");
수식에서 "c"가 20선을 크로스할때 20선의 50%이상 크로스 할때라는 조건을 첨가하고 싶은
데 부탁드립니다
2022-06-09
1286
글번호 159698
답변완료
수식 문의 드립니다
input : 익절틱수(100),손절틱수(20);
if NextBarSdate != sDate Then
{
if NextBarOpen > C Then
Sell("s",AtStop,C);
if NextBarOpen < C Then
Buy("b",AtStop,C);
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
SetStopLoss(PriceScale*손절틱수,PointStop);
------
일봉매매 수식어 입니다.
전일 buy 진입후 익절 +100틱이 나오질 않아서 당일시가이후 신호없이 연장선상에 있는
수식어 입니다.
한국시간 07:00~익일06:00 자동청산의 수식어를 포함 해 주시면 감사하곘습니다.
2022-06-09
1204
글번호 159697
2wnwn 님에 의해서 삭제되었습니다.
2022-06-09
14
글번호 159696
회원 님에 의해서 삭제되었습니다.
2022-06-09
129
글번호 159695
답변완료
색깔 방식
input : FastLen(30),SlowLen(90),Length(20),Stdv(1.1),굵기(1);
var : bbmacd(0),avgv(0),sdev(0),r(0),b(0),UpperBand(0),LowerBand(0);
var : tx(0),t(0),tl1(0),TL2(0);
bbMacd = ma(c,FastLen)-ma(c,SlowLen);
avgv = ma(bbmacd,Length);
sDev = std(bbMacd,Length);
UpperBand = avgv+(StDv*sDev);
LowerBand = avgv-(StDv*sDev);
if bbMacd > bbMacd[10] then
{
r=255;
b=0;
t = 1;
}
else
{
r=0;
b=255;
t = -1;
}
plot1(UpperBand,"UpperBand",RGB(0,0,255));
plot2(LowerBand,"LowerBand",RGB(255,0,0));
tx = Text_New_Self(sdate,stime,bbMacd,"●");
Text_SetColor(tx,rgb(r,0,b));
Text_SetStyle(tx,2,2);
if T != T[1] then
{
TL1 = TL_New_Self(sDate,sTime,-999,sDate,sTime,99999);
TL_SetColor(TL1,rgb(r,0,b));
TL_SetColor(TL2,rgb(r,0,b));
TL_SetSize(TL1,굵기);
TL_SetSize(TL2,굵기);
}
색깔을 숫자식이 아닌 그냥 red,blue,pink, 이런식으로 입력할수 있게 변경 부탁드립니다.
2022-06-08
1179
글번호 159693