커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
7530
글번호 230811
답변완료
(32891질문 분봉 데이타 시물레이션 결과 상이 분석요청) 재요청
수고하십니다.
32891 질문을 올릴때 제가 잘못하여 다른 시스템으로 한 결과를 사진상으로 올렸습니다.
번거롭게 해 죄송합니다.
다시 한번 봐 주시면 고맙겠습니다.
분봉 데이타를 올리면 좋켔는데..파일이 커서 올라가지 않네요
시스템식은 아래와 같습니다.
input : 이격기간1(16),이격기간2(248),이격기간3(18),이격기간4(246),볼륨레이쇼기간1(19),볼륨레이쇼기간2(14),볼륨레이쇼기간3(19),볼륨레이쇼기간4(8);
input : 매수이격기준1(100),매수이격기준2(100.834);
input : 매도이격기준1(100.35),매도이격기준2(100.305);
var : 이격도1(0),이격도2(0),이격도3(0),이격도4(0),볼륨레이쇼1(0),볼륨레이쇼2(0),볼륨레이쇼3(0),볼륨레이쇼4(0);
var : 매수조건1(false),매수조건2(false),매도조건1(false),매도조건2(false);
이격도1 = Disparity(이격기간1);
이격도2 = Disparity(이격기간2);
이격도3 = Disparity(이격기간3);
이격도4 = Disparity(이격기간4);
볼륨레이쇼1 = VR(볼륨레이쇼기간1);
볼륨레이쇼2 = VR(볼륨레이쇼기간2);
볼륨레이쇼3 = VR(볼륨레이쇼기간3);
볼륨레이쇼4 = VR(볼륨레이쇼기간4);
#이격도1이 매수이격기준1을 상향돌파하고 VR1이 2봉연속 상승
매수조건1 = (crossup(이격도1,매수이격기준1))[1] and countif(볼륨레이쇼1 > 볼륨레이쇼1[1],2) == 2;
#이격도2가 매수이격기준2를 상향돌파하고 VR2가 2봉연속 상승
매수조건2 = (crossup(이격도2,매수이격기준2))[1] and countif(볼륨레이쇼2 > 볼륨레이쇼2[1],2) == 2;
#이격도1이 매도이격기준1을 하향이탈하고 VR1이 2봉연속 하락
매도조건1 = CrossDown(이격도3,매도이격기준1) and countif(볼륨레이쇼1 < 볼륨레이쇼3[1],2) == 2;
#이격도2가 매도이격기준2를 하향이탈하고 VR2가 2봉연속 하락
매도조건2 = CrossDown(이격도4,매도이격기준2) and countif(볼륨레이쇼2 < 볼륨레이쇼4[1],2) == 2;
if 매수조건1 == true or 매수조건2 == true Then
buy();
if 매도조건1 == true or 매도조건2 == true Then
sell();
2013-10-14
186
글번호 68460
답변완료
조금 수정해 주십시요.
아래식의 매수조건에...
-"시초가는 5일이평선(일봉) 이격도 100 이상이어야 하고"... 를
->"5일이평선(일봉) 이격도 100이하로 하락한 적이 없어야 하고"... 로 바꿔 주세요.
-----------------------------------------------
input : P(5);
var : cnt(0),sum(0),sum1(0),mav(0),mav1(0),dis(0),dis1(0),daycnt(0),PredayVol(0);
Var : Pivot(0),R1(0),R2(0),S1(0),S2(0);
Pivot = (DayHigh(1)+DayLow(1)+DayClose(1))/3;
sum = 0;
sum1 = 0;
for cnt = 0 to P-1{
sum = sum+DayClose(cnt);
sum1 = sum1+DayClose(cnt+1);
}
mav = sum/P;
mav1 = sum1/P;
dis = c/mav*100;
dis1 = DayClose(1)/mav1*100;
for cnt = 1 to 1000 {
if stime == stime[cnt] and sdate != sdate[cnt] then{
PredayVol = DayVolume[cnt];
cnt = 1001;
}
}
if date != date[1] Then{
Daycnt = daycnt+1;
var1 = dayopen/mav*100;
}
if dayopen <= DayClose(1)*1.01 and
dayhigh <= dayopen*1.04 and
dis1 >= 103 and
ExitDate(1) != sdate and
DayVolume < PredayVol*1 and
var1 > 100 Then{
if stime >= 90000 and stime < 100000 and dis >= 100.5 and dis < 101.5 Then
buy("b1",AtMarket);
if stime >= 100000 and stime < 110000 and dis >= 100.5 and dis < 102.0 Then
buy("b2",AtMarket);
if stime >= 110000 and stime < 120000 and dis >= 100.5 and dis < 102.5 Then
buy("b3",AtMarket);
if stime >= 120000 and stime < 130000 and dis >= 100.5 and dis < 103.0 Then
buy("b4",AtMarket);
if stime >= 130000 and stime < 140000 and dis >= 100.5 and dis < 103.5 Then
buy("b5",AtMarket);
if stime >= 140000 and stime < 144800 and dis >= 100.5 and dis < 104.0 Then
buy("b6",AtMarket);
if stime >= 143000 and stime < 144800 and c < Pivot and dis >= 100.5 and dis < 104.5 Then
buy("b7",AtMarket);
}
if MarketPosition == 1 Then{
if sdate == EntryDate then{
if dis < 100.1 Then
ExitLong("bx11",AtMarket);
if C >= EntryPrice*1.045 Then
ExitLong("bx12",AtMarket);
}
if sdate > EntryDate and daycnt == daycnt[BarsSinceEntry]+1 Then{
if stime >= 090800 and stime <= 091000 and C >= DayClose(1)*1.05 Then
exitlong("bx21",AtMarket);
if stime >= 091800 and stime <= 092000 and C >= DayClose(1)*1.04 Then
exitlong("bx22",AtMarket);
if stime >= 092800 and stime <= 093000 and C >= DayClose(1)*1.03 Then
exitlong("bx23",AtMarket);
if stime >= 093800 and stime <= 094000 and C >= DayClose(1)*1.02 Then
exitlong("bx24",AtMarket);
if C >= EntryPrice*1.10 Then
ExitLong("bx25",AtMarket);
if C >= DayClose(1)*1.08 Then
ExitLong("bx26",AtMarket);
if stime >= 095500 Then
ExitLong("bx27",AtMarket);
}
2013-10-14
191
글번호 68459
답변완료
수식요청합니다...
수식부탁합니다..
2013-10-14
169
글번호 68458
답변완료
질문입니다.
1.아래의 함수에서 현재 swinglow로 지정된 봉의 저가값을 불러오려면 어떻게 해야하나요?
또한 직전 swinglow로 지정된 봉의 저가값을 불러오려면 어떻게 해야하나요?
예를들어 현재 swinglow의 값보다 금일저가가 15%이하일 경우를 나타내려면...
직전 swinglow의 값보다 금일저가가 20%이하일 경우를 나타내려면...
/* Description : Swing Low
*
* Provided By : YesStock Inc. (c) Copyright 2006
* E-Mail : webmaster@yesstock.com
*/
Input : Occur(NumericSimple), Value(NumericSeries), Left(NumericSimple), Right(NumericSimple), Length(NumericSimple);
Var : Result(0), X(0), J(0), Z(0), Ltrue(FALSE), Counter(0), Found(FALSE);
if CurrentBar >= Length - 1 then
{
Result = -1;
Z = 0;
X = Right;
Counter = 0;
Found = FALSE;
while Counter < Length && X + Left < Length && Found == FALSE
Begin
J = X + Left;
Ltrue = TRUE;
while Ltrue && J > X
Begin
if Value[X] > Value[J] then Ltrue = FALSE;
J = J - 1;
End
J = X - 1;
while Ltrue && J >= X - Right
Begin
if Value[X] >= Value[J] then Ltrue = FALSE;
J = J - 1;
End
if LTrue == TRUE then
{
Z = Z + 1;
if Z >= Occur then
{
Result = Value[X];
Found = TRUE;
}
}
X = X + 1;
Counter = Counter + 1;
End
if Z == 0 then
SwingLow = -1;
else
SwingLow = Result;
}
2.전봉 또는 현재봉이 직전 26개봉 최저가 이고 현재봉이 양봉이며 현재봉과 직전봉의 최저가를 이탈하는 봉이 2개이상 발생할경우 1을 호출하는 수식부탁드립니다.
2013-10-14
179
글번호 68457
TRF 님에 의해서 삭제되었습니다.
2013-10-14
1
글번호 68452
답변완료
청산 관련 질문
음봉일때 매도하고, 손절 기준을 진입봉의 고가를 기준을 3틱에 도달하면 손절하려고 합니다.
진입식
if marketPosition != -1 then {
sell("S");
s_base = H;
}
청산식
if marketpostion == -1 and IsEntryName("S") then {
exitshort("SX", atstop, s_base + 0.15);
}
<현상>
- 10/11일 5분봉 차트에서 2번째 음봉에서 매도 진입후 그 다음봉에서 s_base + 0.15를 상향 돌파함에도 불구하고 즉시 청산되지 않고, 봉이 완성된 다음봉에서 청산됨
<질문>
exitshort 명령에서 atstop 조건은 지정한 가격을 돌파 즉시 청산되는 것으로 알고 있는데
s_base + 1.15를 상향돌파하는 즉시 청산할 수 있는 방법은 무엇인지요
2013-10-14
150
글번호 68448
답변완료
문의드립니다.
검색기준일을 과거날짜로 식에 추가하여 검색하고 싶습니다.10분봉 종목검색식을 사용하여 특정일에 조건을만족하는 식을 구하고 싶습니다.
예로 10월8일기준 전날고가보다 당일 고가가 높은 종목
답변 부탁드립니다.
2013-10-14
164
글번호 68437
깡통불기 님에 의해서 삭제되었습니다.
2013-10-14
15
글번호 68434
답변완료
다우지수
안녕하세요
다우산업지수. 1%. 하락하면. 매도
위내용. 반대면. 매수
감사^^
2013-10-14
180
글번호 68428