커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4445
글번호 230811
답변완료
문의드립니다.
일정한 시간 간격으로 피라미딩 진입하는 식을 알고싶습니다.
가령 예를 들자면 첫매수진입 이후에
직전진입후 10분이 경과하고,
직전진입보다 가격이 높으면
계속 피라미딩으로 진입하는.
제 경우에는 진입시간이 잘 해결이 안됩니다.
시간이 60분 단위라서 무작정 시간에 +1000 (10분)을 해서는 안되는것 같습니다.
분봉뿐 아니라 틱봉에도 적용할 수 있는 수식 부탁드립니다.
항상 건강하세요. ^^
2017-02-01
116
글번호 106398
답변완료
부탁드립니다.
조건문;;( 매수의경우)
** 10일이평과 20일이평이 골든크로스 ( 참조데이터(30분봉)도 골드 )
** 20일이평의 기울기가 상승 ( 참조데이터도 상승 )
** smi 지표의 기울기가 상승
** 손절은 20틱, 익절은 50틱
** 청산은 smi지표가 50이상이면 청산
** 20일이평의 기울기가 하락하면서 데드크로스발생하면 손절
1)현재가가 10일이평 위에 있을경우
-- 종가나 저가가 10일이평과 5틱이내로 접근된경우의 음봉종가에서 매수
2) 현재가가 10일이평 아래에있을경우
-- 종가나 고가가 10일이평 5틱이내로 접근된경우의 양봉종가에서 매수
3) data1 ,2 의 smi지표가가 -50 이하이며 10일이평과의 이격이 20틱이상인 음봉의 종가가 형성되면 매수
** 매도는 반대
미리감사드립니다.
2017-02-01
124
글번호 106397
답변완료
문의드립니다
안녕하세요
아래 지표식을 이용한 시스템식 부탁드립니다
Input : af(0.02), maxAF(0.2);
Var : value(0),T(0);
var : HH(0),HH1(0),HH2(0),HH3(0),LL(0),LL1(0),LL2(0),LL3(0);
var : HH4(0),HH5(0),HH6(0),LL4(0),LL5(0),LL6(0);
value = sar(af,maxAF);
if crossUP(c,value) Then{
T = 1;
HH = H;
HH1 = HH[1];
HH2 = HH1[1];
HH3 = HH2[1];
HH4 = HH3[1];
HH5 = HH4[1];
HH6 = HH5[1];
}
if CrossDOWN(c,value) Then{
T = -1;
LL = L;
LL1 = LL[1];
LL2 = LL1[1];
LL3 = LL2[1];
LL4 = LL3[1];
LL5 = LL4[1];
LL6 = LL5[1];
}
if T == 1 Then{
if H > HH Then
HH = H;
}
if T == -1 then{
if L < LL Then
LL = L;
}
if HH6 > 0 and LL6 > 0 then{
var1 = NthMaxList(1,HH1,HH2,HH3,HH4,HH5,HH6);
var2 = NthMinList(1,LL1,LL2,LL3,LL4,LL5,LL6);
var3 = var2 + (var1 - var2)/2;
var4 = (var1+var3)/2;
var5 = (var2+var3)/2;
}
매 수
========
5 이평이 var1을 돌파후 파라볼릭 매도신호가 발생하고 var3 위에서 파라볼릭 매수신호가 발생
매수청산
========
5 이평이 var3 이탈 또는 매수신호발생시 직전저점 이탈
매 도
========
5 이평이 var2을 이탈후 파라볼릭 매수신호가 발생하고 var3 아래에서 파라볼릭 매도신호가 발생
매도청산
========
5 이평이 var3 돌파 또는 매도신호발생시 직전고점 돌파
감사합니다.
2017-02-01
116
글번호 106396
답변완료
수식문의 드립니다.
안녕하세요
하기 수식 구현이 가능하신지 확인 부탁드립니다.
볼린져 밴드를 이용한 수식입니다.
볼리져 밴드하단 밖에서 완성된 음봉이 발생하면 매도로 진입합니다.- 양봉은 무시합니다.
매도로 진입한 상태에서 볼린져 밴드 이평을 관통한 양봉이 발생하면 봉완성 후 청산합니다.
최초 매도 진입가로 다시 오면, 매도 재진입하거나,
stoptrailing 으로 청산 된 가격으로 다시 오면, 재매도 진입합니다.
상기 수식은 볼린져 밴드 상단을 하기와 같은 조건이 될 때까지
매도 추세로 간주하고 계속 반복합니다.
볼린져 밴드상단 밖에서 완성된 양봉이 발생하면 매수 진입합니다. - 음봉은 무시합니다.
매수로 진입한 상태에서 볼린져 밴드 이평을 관통한 음봉이 발생하면 봉완성 후 청산합니다.
최초 매수 진입가로 다시 오면, 매수 재진입하거나,
stoptrailing 으로 청산 된 가격으로 다시 오면, 재매수 재진입합니다
상기 수식은 볼린져 밴드 하단을 밖에서 완성된 음봉이 발생될 때까지,
매수 추세로 간주하고 계속 반복합니다.
검토 부탁드립니다.
감사합니다.
2017-02-01
107
글번호 106395
답변완료
특정시간 매매 수식부탁드립니다.
5분봉차트에서 예를 들어 17시55분에서 양봉마감시 다음봉인 18시에 시가매수 음봉마감시 다음봉인 18시에 시가매도 익절 30틱 손절 15틱 2시간뒤인 20시에 목표가 도달 안될시 청산하고 진입은 무조건1회만으로 수식을 만들고 싶습니다.
2017-01-31
119
글번호 106394
답변완료
분봉 3개 합
* 어려운 시기에 수고 많습니다.
* 요청 사항 : 3분봉 그래프 에서 매수 싯점에 직전 3개봉 상승율 합이 5% 미만일경우 매수
* 설명 : 조건 만족후 매수 하기전에 직전 3개봉 상승율 합이 5% 보다 작을때 매수
ps: var7 = C[1]+C[2]+C[2];
if var7 < 5 then buy(); 이케 하니까 안되네요......???
* 고맙습니다.
2017-01-31
110
글번호 106393
답변완료
수식변환 부탁드립니다.
항상 도움 주셔서 감사합니다.
아래식에서 나온 결과값으로 차트 캔들위 또는 아래에
점으로 표시하고 싶습니다.
t1=MA(5);
t2=max(C,5);
t3=min(C,5);
x=valuewhen(1,crossdown(c,t1),
highestsince(1,crossup(c,t1),h));
y=valuewhen(1,crossup(c,t1),
lowestsince(1,crossdown(c,t1),l));
if(crossdown(c,t1) and c>=t2,x,if(crossup(c,t1) and c<=t3,y,0);
valuewhen, higestsince 함수는 키움증권 함수입니다.
참고하시기 바랍니다.
혹시 예제가 이상해서 표현이 안되더라도
마지막 if문에서 나온 결과값으로 차트에 점으로 표시될수 있도록
올바른 수식만이라도 작성 부탁드립니다.
그리고 차트에 점으로 표시할때 혹시 강조에서 작성해야 하나요?
도움 부탁드립니다.
2017-01-31
166
글번호 106392
답변완료
부탁 드립니다
도움 주심에 감사 드립니다.
var1=(DIPLUS(P1)-DIMINUS(P1))/(DIPLUS(P1)+DIMINUS(P1));
위 수식이 아래 수식과 같이
시작 시각에 0으로 출발 할수 있겠는지요?
미리 감사 드립니다.
input:시작년월일(20170126),시작시각(080000);
input:종료년월일(20170131),종료시각(060000);
input: Period1(12),Period2(26),Period3(9);
variables: VolumeValue( 0 ), MedPrice( 0 ), PV( 0 ),StartCalcDate(0),StartTime(0),
CumulativeVolume( 0 ), CumulativePV( 0 ), Started( false ), Denom( 0 ),
KeyCumVol( 0 ), KeyCumPV( 0 ), MidasValue( 0 ) ;
Var : Ep1(0), JISU1(0),Ep2(0), JISU2(0),Ep3(0),Jisu3(0);
var : MACDVal(0),MACDSig(0),ii(0),SD(false),ED(false);
Ep1 = 2/(Period1+1);
Ep2 = 2/(Period2+1);
Ep3 = 2/(Period3+1);
StartCalcDate=시작년월일;
StartTime=시작시각;
if SD == false and sdate >= 시작년월일 Then
SD = true;
if SD == true and stime >= 시작시각 Then
Started = true;
if Started == true and ED == false and sdate >= 종료년월일 Then
ED = true;
if Started == true and ED == true and stime >= 종료시각 Then
Started = false;
if Started == true then
{
VolumeValue = iff( DataCompress < 1, Ticks, Volume ) ;
MedPrice = (H + L)/2 ;
PV = MedPrice * VolumeValue ;
CumulativeVolume = VolumeValue + CumulativeVolume ;
CumulativePV = PV + CumulativePV ;
}
if Started == true and Started[1] == false then
{
Started = true ;
Denom = 1 ;
KeyCumVol = CumulativeVolume ;
KeyCumPV = CumulativePV ;
}
else if Denom >= 1 then
Denom = CumulativeVolume - KeyCumVol ;
if Started then
{
if Denom > 1 then
MidasValue = ( CumulativePV - KeyCumPV ) / Denom ;
else if Denom == 1 then
MidasValue = MedPrice ;
ii = ii+1;
if ii <= 1 then {
JISU1 = MidasValue;
JISU2 = MidasValue;
MACDVal = JiSu1-Jisu2;
MACDsig = MACDVal;
}
else{
JISU1 = MidasValue * EP1 + JISU1[1] * (1-EP1);
JISU2 = MidasValue * EP2 + JISU2[1] * (1-EP2);
MACDVal = JiSu1-Jisu2;
MACDsig = MACDVal * EP3 + MACDsig[1] * (1-EP3);
}
plot1(MACDVal);
plot2(MACDsig);
PlotBaseLine1(0);
}
2017-01-31
135
글번호 106391
답변완료
수식문의 드립니다..
1. 20일선 돌파시 매수(매도)
2. 20일선 돌파시점에서 5틱이상 상승후 돌파시점까지 내려오면 매수(매도)
문의 드립니다...
2017-01-31
111
글번호 106390