커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
2486
글번호 230811
답변완료
수식 문의
아래 수식은 본 게시판에서 얻어 배운 ^^
직전봉 호가잔량의 차이를 구하되
(시초가첫봉이 전일 마지막봉과 비교하는 오류를 피하기 위해)
시초가 첫봉은 0과 비교하는 수식입니다.
여기에, 문의드리고 싶은 내용은,
양수값은 붉은색 막대로
음수값은 푸른색 막대로 칠하고 싶은데, 단,
ㄱ. 직전봉의 '절대값' 보다 높을 때에만 붉은/푸른색으로 칠하고
ㄴ. 그렇지 않다면, 직전봉 색깔을 그대로 유지하고 싶습니다.
항상 친절한 답변 감사드립니다.
Var9 = Bids - Asks ;
if Bdate != Bdate[1] Then
Var20 = Var9 - 0;
Else
Var20 = Var9- Var9[1];
if Var20 > 0 Then
Plot40(Var20, "양수값");
if Var20 < 0 Then
Plot41(Var20, "음수값");
2022-02-17
1135
글번호 156410
답변완료
종목검색식 부탁드립니다.
안녕하십니까
종목검색 수식 부탁드립니다.
1. 금일 일봉 양봉
2. 3분봉 기준 20이평 상승
3. 3분봉 기준 20일 거래량 평균보다 10배 이상 급증 종목
(2,3번 조건은 변경 할수있게 주석 부탁드립니다.)
장중 3분봉 기준으로 3분마다 자동 갱신되어 종목이 보여지는지, 아니면 3분마다 수동으로
검색해 줘야 되는지도 궁금합니다.(파워종목 검색[3202]에서 실행 중]
수동검색이라면 자동으로 할수있는 방법은 없을까요?
항상 행운가득 하시길 바랍니다.
감사합니다.
2022-02-17
939
글번호 156408
답변완료
다박스 상승 돌파 좀목검색
Input : 기간(5);
var: NHH(0), No(0), LL(0), NH(0), NL(0);
if L==lowest(L,5) Then LL=L ;
Else if L(1) = lowest(L,5) Then LL=L[1];
Else if L(2) = lowest(L,5) Then LL=L[2];
Else if L(3) = lowest(L,5) Then LL=L[3];
Else if L(4) = lowest(L,5) Then LL=L[4];
Else if LL=0;
if h>Highest(H[1],기간) then
{ NHH=H;
No=Index;
}
if Index-No==3 && Highest(H,3)<Highest(H,4) Then
{ NH=NHH;
NL=LL;
}
if CrossUp(c, nh) Then Find(1);
이렇게 했는데 뭐가 잘못 되었는지 안됩니다.
수식이 재 검토 부탁 드립니다.
감사합니다.
2022-02-17
923
글번호 156407
답변완료
진짜 진짜 감사합니다. ^^
예스스탁을 알고나서 매매가 너무 편해졌어요~
삶의 질이 달아졌습니다.
너무 좋은 일을 하고계신것 같습니다. ^^
추가 요청이 있는데 구현이 될지 모르겠습니다.
감사합니다~~
트레이딩 설정에서 손절매 목표수익은 체크 해놓은 상태입니다.
60포인트 이상 익절후 본전으로 온다면 강제청산
아니라면 목표 설정 그대로 적용~ ^^
----------------------------------------------------------------------
input: position(1),vol(1);
input : StartTime(160000),EndTime(170000),N(1000),xtime(55800);
var : ST(0),Tcond(false),sumV(0),entry(0);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
{
Tcond = False;
if MarketPosition == 0 and entry < 1 then
{
if position == 1 Then
Buy("매수1",OnClose,DEf,vol);
if position == -1 Then
Sell("매도1",OnClose,DEf,vol);
}
}
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
ST = sTime;
entry = 0;
}
if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or
(MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then
entry = entry+1;
if Tcond == true and V >= N and MarketPosition == 0 and entry < 1 then
{
if position == 1 Then
Buy("매수",OnClose,DEf,vol);
if position == -1 Then
Sell("매도",OnClose,DEf,vol);
}
IF Xtime > ST Then
SetStopEndofday(Xtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Xtime);
}
if (sdate != sdate[1] and stime >= ST) or
(sdate == sdate[1] and stime >= ST and stime[1] < ST) Then
{
IF Xtime <= ST Then
{
SetStopEndofday(0);
}
}
2022-02-17
960
글번호 156406
답변완료
수정 부탁드려요~ ㄳㄳ
청산시 재진입 금지, 종료 시켜주세요~ (1회 제한)
감사합니다. ^^
-------------------------------------------------------------------
input: position(1),vol(1);
input : StartTime(160000),EndTime(170000),N(1000),xtime(55800);
var : ST(0),Tcond(false),sumV(0);
if (sdate != sdate[1] and stime >= EndTime) or
(sdate == sdate[1] and stime >= EndTime and stime[1] < EndTime) Then
{
Tcond = False;
if MarketPosition == 0 then
{
if position == 1 Then
Buy("매수1",OnClose,DEf,vol);
if position == -1 Then
Sell("매도1",OnClose,DEf,vol);
}
}
if (sdate != sdate[1] and stime >= StartTime) or
(sdate == sdate[1] and stime >= StartTime and stime[1] < StartTime) Then
{
Tcond = true;
ST = sTime;
}
if Tcond == true and V >= N and MarketPosition == 0 then
{
if position == 1 Then
Buy("매수",OnClose,DEf,vol);
if position == -1 Then
Sell("매도",OnClose,DEf,vol);
}
IF Xtime > ST Then
SetStopEndofday(Xtime);
Else
{
if sDate != sDate[1] Then
SetStopEndofday(Xtime);
}
if (sdate != sdate[1] and stime >= ST) or
(sdate == sdate[1] and stime >= ST and stime[1] < ST) Then
{
IF Xtime <= ST Then
{
SetStopEndofday(0);
}
}
2022-02-17
1034
글번호 156402
답변완료
조건식 추가 부탁
안녕하세요
수고가 많으십니다
지난번에 작성해주신 75737식에서 다음 조건 추가 부탁드립니다
매수조건 추가
1) 이격도가 100이하에서 하락후 상승할때
2) 호가잔량 차이의 5이평이 하락후 상승할때
매도조건
1) 이격도가 100이상에서 상승후 하락할때
2) 호가잔량 차이의 5이평이 상승후 하락할때
부탁드립니다
감사합니다
2022-02-17
957
글번호 156399
답변완료
문의드립니다
안녕하세요?
아래수식이 상승형을 위한식이였는데 반대로 하락형을위한 반대식을 구합니다
감사합니다
var : sindex1(0), sindex2(0), Lindex1(0), Lindex2(0);
var : bi(0),si(0);
value1 = stochasticsD(12,5,5);
Condition1 = value1 > value1[1] and value1[1] <= value1[2];
Condition2 = L > L[1] and L[1] <= L[2];
sindex1 = MRO(Condition1,15,1);
sindex2 = MRO(Condition1,15,2);
Lindex1 = MRO(Condition2,15,1);
Lindex2 = MRO(Condition2,15,2);
if value1[sindex1+1] > value1[sindex2+1] and
L[Lindex1+1] < L[Lindex2+1] and
Condition1 and
lowest(L,5) == lowest(L,15)
then
bi = Index;
if bi > 0 and Index == bi+1 Then
buy();
////
var : sindex3(0), sindex4(0), Hindex1(0), Hindex2(0);
Condition11 = value1 < value1[1] and value1[1] >= value1[2];
Condition12 = H < H[1] and H[1] >= H[2];
sindex3 = MRO(Condition11,15,1);
sindex4 = MRO(Condition11,15,2);
Hindex1 = MRO(Condition12,15,1);
Hindex2 = MRO(Condition12,15,2);
if value1[sindex3+1] < value1[sindex4+1] and
H[Hindex1+1] > H[Hindex2+1] and
Condition11 and
Highest(H,5) == Highest(H,15)
then
si = Index;
if Index == si+1 Then
sell();
2022-02-17
1228
글번호 156395
답변완료
BarsSinceEntry, EntryPrice는 검색식에서 사용 불가인가요??
검색식에서 진입가를 쓸려면 어떤 수식을 사용해야 하나요??
일일이 계산해서 사용하는 방법말고 없을까요?
책에 나온 전략식입니다.싸이보스 이용한 식입니다.
input: len(0.3), len1(0.02)
Var1= highd(1)-lowd(1) ‘전일 Range를 var1에 입력
If ttime<1500 then ‘시간이 15시00분 보다 적으면
Call buy("매수", Atstop, Def, opend+Var1*len) ‘금일 시가 + range*len 돌파시 매수
Call sell("매도", Atstop, Def, opend-Var1*len) ‘금일 시가-range*len 돌파시 매도
End If
If position <>0 Then '현재 포지션이 없지 않다면, 1=매수 포지션, -1 = 매도 포지션
Call exitlong("추적스탑”, Atstop, hhv(1,high, barnumsinceEntry+1)*(1-len1))
'매수 이후 최고 고가 대비 일정 비율 하락하면 청산하라
Call exitshort("추적스탑", Atstop, llv(1,low, barnumsinceEntry+1)*(1+len1))
'매도 이후 최고 저가 대비 일정 비율 상승하면 청산 하라
End If
예스트레이더로 변환한 전략식은
input : len(0.3), len1(0.02);
var1 = dayhigh(1)-dayLow(1); //전일 range를 var1에 저장
if stime < 150000 then {
buy("매수", atstop, dayOpen(0)+var1*len); //금일시가+range*len 돌파시 매수
sell("매도",atstop, dayOpen(0)-var1*len); //금일시가-Rang*len 돌파시 매도
}
if MarketPosition <> 0 then {
exitlong("매수추적스탑", atstop, highest(H,BarsSinceEntry+1)*(1-len1));
//매수 이후 최고 고가 대비 일정 비율 하락하면 청산하라
exitshort("매도추적스탑",atstop, lowest(L,BarsSinceEntry+1)*(1+len1));
//매도 이후 최고 저가 대비 일정 비율 상승하면 청산하라
}
아래는 싸이보스 검색식(신호)입니다.
Input: len(0.3), len1(0.02)
Var1=highd(1)-lowd(1)
Call plots1("매수라인", opend+Var1*len)
Call plots2("매도라인", opend-Var1*len)
If i_position=1 Then '1=매수 포지션
Call plots3("추적스탑”, hhv(1,high,i_barnumsinceEntry+1)*(1-len1))
'매수 이후 최고가 대비 2%하락시 청산
End If
If i_position=-1 Then '-1=매도 포지션
Call plots3("추적스탑", llv(1,low,i_barnumsinceEntry+1)*(1+len1))
'매도 이후 최저가 대비 2% 상승시 청산
End If
예스트레이더에 맞게 검색식은 어떻게 작성해야 할까요???
2022-02-17
1129
글번호 156393
답변완료
문의드립니다.
안녕하세요,
아래와 같이 수익 청산 및 손절 관련해서 수식을 넣어놓았는데,
언젠가부터 항상 목표가, 손절가 도달 전에 청산이 되어버립니다.
뭐가 문제일까요?
나스닥 기준 8포인트 도달 시 익절, -8포인트 도달 시 손절입니다.
-----------
윗부분 생략
If CrossUp(High, mav) Then
Buy("매수",AtLimit,mav);
SetStopLoss(PriceScale*8,PointStop);
SetStopProfittarget(PriceScale*8,PointStop) ;
2022-02-17
994
글번호 156389