커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4612
글번호 230811
답변완료
수식부탁드립니다
안녕하세요
해외선물거래를 하는데요. 08:00 거래를 시작해서 하루에 한번만 진입하는 수식좀 부탁드립니다.
수고하십시요
2016-06-07
105
글번호 98769
답변완료
시스템 주문
1. 시가 + 30틱에서 매도 후, 시가에서 청산/시가 + 60틱에서 스탑
2. 시가 - 30틱에서 매수 후, 시가에서 청산/시가 - 60틱에서 스탑
으로 하되 오전 7시~오후 2시까지만 주문이 살아 있고 오후 2시 이후에는 진입주문은 모두 캔슬하고 기진입된 포지션이 있으면 청산주문과 스탑 주문만 살아 있게 하고 싶습니다.
2016-06-07
100
글번호 98768
답변완료
문의드립니다.
안녕하세요.
당일 분봉 차트에서
Value1 = c*v;
1. 당일저점 찍은 후 당일고점 찍고 하락 시 당일고점 ~ 현재까지의 Value1을 누적합산한 값
2. 당일고점 찍은 후 당일저점 찍고 상승 시 당일저점 ~ 현재까지의 Value1을 누적합산한 값 수식을 알려주세요.
수고하세요.
2016-06-07
101
글번호 98767
답변완료
수식부탁합니다
종목검색식
1)=== 직전5거래일동안 20이평선의 등락률이 -n%이상이고 n거래일동안 하락중이고
2)=== dmi(14)에서 DIPlus>DIMinus 인 종목검색식.
시스템식
매수조건- 1).검색조건 1),2),을 충족하고 5이평선이 20이평선을 상향돌파하면 매수
2).검색조건 1),을 충족하고20이평이 60이평보다크고 5이평선이 20이평선을
상향돌파하면 매수
3).검색조건 1), 을 충족하고5이평선이 20이평선을 하향돌파하고 주가가
전고점과 전저점 사이에서 상승반전하면 매수
매도조건- 1).5이평선이 20이평선을 하향돌파하고 주가가 전저점을 하향이탈하면 매도
2).MACD가 데드크로스면 매도
주석까지 부탁합니다
2016-06-10
121
글번호 98766
답변완료
질문입니다.
안녕하세요.
금요일 진입 안하는 식 있는지 질문드립니다.
감사합니다.
2016-06-07
100
글번호 98762
답변완료
stoploss 관련
수고 많으십니다.^^*
stoploss를 쓰지 않고 entryprice를 쓰고 싶은데 안되네요.
// 10분봉 atm 연결콜옵션, 당일청산
var:f0(False),f1(False);
//스탑로스
SetStopLoss(30);
f0=dayindex==0 ;
if f0 then sell();
위식을 setstoploss(30)을 없에고 다음처럼 작성하면 전혀다른결과가 나옵니다.ㅠㅠ
// 10분봉 atm 연결콜옵션, 당일청산
var:f0(False),f1(False);
f0=dayindex==0 ;
f1= c>=EntryPrice*1.3 ;//손절30%
if f0 then sell();
if f1 then exitshort();
뭐가 잘못되었나요?
2016-06-07
99
글번호 98760
답변완료
시스템식 수정 문의드립니다
안녕하세요~~~
신고가 조건과 매수전 조건을 추가 하고 싶어서 문의드립니다!!
항상 감사합니다!!!
현재 아래의 시스템식을 15분봉 상에서 적용중입니다
1. 신고가 조건 추가
ㄱ. 15분 봉상 고가가 15분 봉상의 엔벨로프 20,20의 상단을 넘었던 적이 있고
ㄴ. a = 15분봉상 지난 500봉의 최대거래량
a 돌파 & 15분 봉이 o*1.06 < c
ㄱ&ㄴ의 조건 만족시 신고가 조건 만족으로 매수준비
2. 매수전 조건 추가 (현재 이평선 조건에)
ㄱ. 조건 - 현재 매수구간에서 -6%이상의 음봉
매수전 발생 = 매수금지 (다음 신고가 조건 만족전까지)
1차매수 이후 발생 = 추매는 그대로, 매도폭은 50%
ㄴ. 현재매수구간에서
조건 - a = 15분봉상 지난 500봉의 최대거래량
a*0.6 의 거래량 돌파 & 15분봉 o*1.06> c 발생
매수전 = 매수금지 (다음 신고가 조건 만족전까지)
1차매수 이후 발생 = 추매는 그대로, 매도폭은 50%
다음 신고가가 발생되면 2의 조건들은 리셋
위와 같습니다.
모자라는 부분 알려주시면 바로 보충하겠습니다!!
---------------------------------------------------
input : P(20),시작날짜(20160108),매수1차(1000000),매수2차(1500000),매수3차(2000000);
var : T(0),HH(0),Price1(0),Price2(0),Price3(0),diff(0),maxdiff(0),Lv(0),sum(0),mav(0),cnt(0),Hv(0),entry(false);
var : dayhh(0);
sum = 0;
dayhh = dayhigh(0);
for cnt = 0 to P-1{
sum = sum+DayClose(cnt);
if dayhigh(cnt) > dayhh Then
dayhh = dayhigh(cnt);
}
mav = sum/P;
######## 매수전 조건 ##############
if sdate >= 시작날짜 then{
if crossup(L,mav) Then{
T = 1;
diff = 0;
maxdiff = 0;
Condition1 = false;
entry = false;
}
if CrossDown(H,mav) Then{
T = -1;
Condition1 = false;
entry = false;
}
##### 신고가 조건 ############
if dayhh > dayhh[1] Then{
Condition1 = true;
entry = true;
Hv = H;
Lv = L;
}
######### 폭설정 조건 ###############
if T == 1 and Condition1 == true Then{
if H > Hv Then
Hv = H;
if L < Lv Then
Lv = L;
diff = Hv-Lv;
if diff > maxdiff Then
maxdiff = diff;
Price1 = Hv-maxdiff*1;
Price2 = Hv-maxdiff*2;
Price3 = Hv-maxdiff*3;
}
if MarketPosition == 1 Then
entry = false;
#가격이 하락해 1차매수가격 이하이면 매수
if MarketPosition == 0 and Condition1 == true and entry == true and L > mav and Hv >= Price1*1.025 Then
buy("b1",atlimit,Price1,Floor(매수1차/C));
#가격이 하락해 2차매수가격 이하이면 매수
if MarketPosition == 1 and MaxEntries == 1 and Price2[BarsSinceEntry+1] > 0 Then
buy("b2",atlimit,Price2[BarsSinceEntry+1],Floor(매수2차/C));
#가격이 하락해 3차매수가격 이하이면 매수
if MarketPosition == 1 and MaxEntries == 2 and Price3[BarsSinceEntry+1] > 0 Then
buy("b3",atlimit,Price3[BarsSinceEntry+1],Floor(매수3차/C));
if MarketPosition == 1 Then{
#진입이후로 한번도 선 아래로 내려가지 않은경우
#진입이후 최저가에서 폭만큼 상승하면 청산
if countif(L<mav,BarsSinceEntry) == 0 Then
ExitLong("bx1",atlimit,lowest(L,BarsSinceEntry)+maxdiff[BarsSinceEntry+1]);
#진입이후로 20선 아래로 한번이상 내려간 경우
#진입이후 최저가에서 폭의 절반만큼 상승하면 청산
if countif(L<mav,BarsSinceEntry) >= 1 Then
ExitLong("bx2",atlimit,lowest(L,BarsSinceEntry)+maxdiff[BarsSinceEntry+1]*0.5);
#일괄매도 = 현재 20일 신고가 이후 최저가 + 최대폭(75%)
ExitLong("일괄매도",atlimit,lowest(L,BarsSinceEntry)+maxdiff[BarsSinceEntry+1]*0.75);
if MaxEntries == 2 Then
exitlong("본절2",atlimit,(Price1[BarsSinceEntry+1]+Price2[BarsSinceEntry+1])/2);
if MaxEntries == 3 Then
exitlong("본절3",atlimit,Price2[BarsSinceEntry+1]);
}
}
2016-06-07
116
글번호 98759
답변완료
지그재그
늘 성실한 답변 감사드립니다.
문의 드릴 내용은 수식지왕님의 지그재그 파동선의 저점들의 연결선을 평할하여 그리고
고점들의 연결선을 평할하여 그리는 지표입니다.
중심선은 지그재그 차트가 그려져 고점과 저점에 생기는 중심점의 연결인데 그것도 평할하여
그려지면 좋겠습니다.
연결선들이 부드러운 곡선이 되겠지요.
지그재그 파동이 현재 가격에서는 그려지지 않더라고 앞의 고점과 저점의
연결선은 현재가격까지 연장되어 그려지면 좋겠습니다.
수식지왕님의 지그재그 수식과 그림 첨부합니다. 감사합니다.
#==========================================#
# 지표명 : 지그재그차트
# 작성자 : 수식지왕
# 블로그 : http://yahoosir.blog.me
#==========================================#
Input:상승률(0.05),하락률(0.05);
Var:j(0),상승(100),하락(-100),양방향(2),
기준고(0),기준저(0),기준고Bar(0),기준저Bar(0),추세(0),이중파동(0);
Array:고[20](0),저[20](0),고Bar[20](0),저Bar[20](0);
#==========================================#
# 전고점,전저점 index 증가
#==========================================#
For j = 1 To 19
{
저Bar[j] = 저Bar[j] + 1;
고Bar[j] = 고Bar[j] + 1;
}
#==========================================#
# 이중파동 처리
#==========================================#
If 이중파동 > 0 Then
{
Plot1(이중파동);
이중파동 = 0;
}
#==========================================#
# 최근 고,저 갱신
#==========================================#
If 기준고 <= H || 기준고 == 0 || IsNaN(기준고) == True Then
{
기준고 = H;
기준고Bar = 0;
}
Else
기준고Bar = 기준고Bar + 1;
If 기준저 >= L || 기준저 == 0 || IsNaN(기준저) == True Then
{
기준저 = L;
기준저Bar = 0;
}
Else
기준저Bar = 기준저Bar + 1;
#==========================================#
# 추세방향 결정
#==========================================#
If 기준고 * (1 - (하락률/100)) > H && 기준저 * (1 + (상승률/100)) < L Then
{
추세 =iff(기준고Bar==기준저Bar,양방향,iff(기준고Bar>기준저Bar,상승,하락));
}
Else If 기준고 * (1 - (하락률/100)) > H Then 추세 = 하락;
Else If 기준저 * (1 + (상승률/100)) < L Then 추세 = 상승;
#==========================================#
# 추세변화에 따른 변곡점 처리
#==========================================#
If 추세[1] == 상승 && 추세 == 하락 Then
{
For j = 18 DownTo 1 {
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
기준고 = H;
기준고Bar = 0;
기준저 = L;
기준저Bar = 0;
If 이중파동[1] > 0 Then 이중파동 = 고[1];
Else plot1(고[1]);
}
If 추세[1] == 하락 && 추세 == 하락 &&
고[1] < 기준고 &&
기준고 * (1 - (하락률/100)) > H Then
{
For j = 18 DownTo 1
{
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준고 = H;
기준고Bar = 0;
기준저 = L;
기준저Bar = 0;
plot1(저[1]);
이중파동 = 고[1];
}
If 추세[1] == 하락 && 추세 == 상승 Then
{
For j = 18 DownTo 1
{
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준저 = L;
기준저Bar = 0;
기준고 = H;
기준고Bar = 0;
If 이중파동[1] > 0 Then 이중파동 = 저[1];
Else plot1(저[1]);
}
If 추세[1] == 상승 && 추세 == 상승 &&
저[1] > 기준저 &&
기준저 * (1 + (상승률/100)) < L Then
{
For j = 18 DownTo 1
{
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준저 = L;
기준저Bar = 0;
기준고 = H;
기준고Bar = 0;
plot1(고[1]);
이중파동 = 저[1];
}
If 추세 == 양방향 Then
{
For j = 18 DownTo 1
{
고[j+1] = 고[j];
고Bar[j+1] = 고Bar[j];
저[j+1] = 저[j];
저Bar[j+1] = 저Bar[j];
}
고[1] = 기준고;
고Bar[1] = 기준고Bar;
저[1] = 기준저;
저Bar[1] = 기준저Bar;
기준고 = H;
기준고Bar = 0;
기준저 = L;
기준저Bar = 0;
추세 = 추세[1];
If 추세[1] == 상승 Then
{
Plot1(고[1]);
이중파동 = 저[1];
}
Else
{
Plot1(저[1]);
이중파동 = 고[1];
}
}
#==========================================#
# 마무리
#==========================================#
If LastBarOnChart == 1 && 기준고Bar > 0 && 기준저Bar > 0 Then
{
plot1(Iff(추세 == 상승,기준고,기준저));
}
2016-06-07
427
글번호 98758
웨퐁 님에 의해서 삭제되었습니다.
2016-06-07
6
글번호 98757