커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6175
글번호 230811
답변완료
부탁드립니다
09시부터 09시30분(시간변경가능)까지의 시,고,저,중,종가를 이전 10일(변경가능)동안의 모든가격을 알고싶습니다 부탁드립니다
2018-03-05
185
글번호 117136
답변완료
거래횟수
거래횟수를 조절하는 수식을 추가해주셨으면 합니다
항상 고맙습니다
해당수식
Inputs: DMILen(14), Consec(3), MinDiff(0);
Variables: DMIDiff(0);
DMIDiff = DIPlus(DMILen) - DIMinus(DMILen);
If DMIDiff[Consec] > 0 Then Begin
If DMIDiff >= MinDiff AND CountIF(DMIDiff > DMIDiff[1], Consec) == Consec Then
Buy ("DMI_LE");
End;
If DMIDiff[Consec] < 0 Then Begin
If Abs(DMIDiff) >= MinDiff AND CountIF(DMIDiff < DMIDiff[1], Consec) == Consec Then
Sell ("DMI_SE");
End;
2018-03-05
161
글번호 117135
답변완료
문의드립니다.
Inputs: Length1(15),Length2(60);
var:HV1(0),LV1(0),MV1(0),HV2(0),LV2(0),MV2(0);
HV1 = highest(h,Length1);
LV1 = lowest(l,Length1);
MV1 = ((HV1 + LV1)/2);
HV2 = highest(h,Length2);
LV2 = lowest(l,Length2);
MV2 = ((HV2 + LV2)/2);
질문1]
a. MV1 이 MV2를 교차상승할 때 교차가
b. MV1 이 MV2를 교차하락할 때 교차가
질문2]
a. MV1이 MV2 보다 클 때 가장 낮은 MV2 값
b. MV1이 MV2 보다 작을 때 가장 높은 MV2 값
질문3]
a. MV1이 MV2 보다 클 때 봉의 갯수
b. MV1이 MV2 보다 작을 때 봉의 갯수
질문4]
a. MV1 이 MV2 보다 클 때 가장 큰 MV1-MV2 의 값
b. MV1 이 MV2 보다 작을 때 가장 큰 MV2-MV1 의 값
감사합니다.
2018-03-05
207
글번호 117134
답변완료
문의드립니다
0시 부터 23 시 까지
NN시 00분 30초 부터 NN시 05분 00초 까지 매매가능시간
NN시 15분 30초 부터 NN시 20분 00초 까지 매매가능시간
NN시 30분 30초 부터 NN시 35분 00초 까지 매매가능시간
NN시 45분 30초 부터 NN시 50분 00초 까지 매매가능시간
매시간마다
위와 같은 시간 사이 에서만
매매 하고 싶습니다
감사합니다
2018-03-05
168
글번호 117133
답변완료
문의드립니다.
도움주시는 덕분에 도전하고 있습니다. 매번 감사합니다.
1. 시뮬레이트 차트에 쓸 수 있는 코드로 변환 부탁드립니다.
Indicator: VFI-Price Divergence
inputs:
Coef( .2 ),
VCoef( 2.5 ),
Period( 130 ),
VFISmoothing( 3 ),
LinearRegPeriod( 120 ) ;
variables:
oCutOff( 0 ), { calculated volume cutoff }
oVC( 0 ), { trimmed volume values }
oMF( 0 ), { difference in ‘typical’ price }
oVFI( 0 ), { calculated VFI }
MySmoothedVFI( 0 ), { smoothed VFI values }
MyVolume( 0 ), { volume after BarInterval test }
LRS( 0 ), { linear regression slope - price }
LRSI( 0 ), { linear regression slope - VFI }
KatsanosDivergence( 0 ),
LowestVFI( 9999999 ),
VFI1( 0 ); { always positive VFI }
MyVolume = iff( BarType < 2, Ticks, Volume ) ;
MySmoothedVFI = VFISmooth( Coef, VCoef, Period,
VFISmoothing, MyVolume, oCutOff, oVC, oMF, oVFI ) ;
if MySmoothedVFI < LowestVFI then
LowestVFI = MySmoothedVFI ;
VFI1 = MySmoothedVFI + AbsValue( LowestVFI )+ 10 ;
if Currentbar > LinearRegPeriod * 2 then
begin
if Close[ LinearRegPeriod ] > 0 then
LRS = LinearRegSlope( close , LinearRegPeriod )
/ close[ LinearRegPeriod ] * 100 ;
if VFI1[ LinearRegPeriod ] > 0 then
LRSI= LinearRegSlope( VFI1, LinearRegPeriod )
/ VFI1[ LinearRegPeriod ] * 100 ;
KatsanosDivergence =
XAverage( LRSI - LRS, 3 ) * 100 ;
Plot1( KatsanosDivergence ) ;
end ;
Strategy: Katsanos VFI Cross 0
inputs:
Coef( .2 ),
VCoef( 2.5 ),
Period( 5 ),
SmoothedPeriod( 7 ) ;
variables:
oCutOff( 0 ),
oVC( 0 ),
oMF( 0 ),
oVFI( 0 ),
MyVFI( 0 ),
MyVolume( 0 ) ;
MyVolume = iff( BarType < 2, Ticks, Volume ) ;
MyVFI = VFISmooth( Coef, VCoef, Period,
SmoothedPeriod, MyVolume, oCutOff, oVC, oMF, oVFI );
if MyVFI crosses over 0 then
buy next bar at market ;
if MyVFI crosses under 0 then
sellshort next bar at market ;
Strategy: Katsanos VFI Divergence
inputs:
Coef( .2 ),
VCoef( 2.5 ),
Period( 130 ),
VFISmoothing( 3 ),
LinearRegPeriod( 120 ),
TradeThreshold( 100 ) ;
variables:
oCutOff( 0 ), { calculated volume cutoff }
oVC( 0 ), { trimmed volume values }
oMF( 0 ), { difference in ‘typical’ price }
oVFI( 0 ), { calculated VFI}
MySmoothedVFI( 0 ), { smoothed VFI values }
MyVolume( 0 ), { volume after BarInterval test }
LRS(0), {linear regression slope - normalized price}
LRSI(0), {linear regression slope - normalized VFI}
KatsanosDivergence( 0 ),
LowestVFI( 9999999 ),
VFI1( 0 ) ; { always positive VFI }
MyVolume = iff( BarType < 2, Ticks, Volume ) ;
MySmoothedVFI = VFISmooth( Coef, VCoef, Period,
VFISmoothing , MyVolume, oCutOff, oVC, oMF, oVFI ) ;
if MySmoothedVFI < LowestVFI then
LowestVFI = MySmoothedVFI ;
VFI1 = MySmoothedVFI + AbsValue( LowestVFI ) + 10 ;
if Currentbar > LinearRegPeriod * 2 then
begin
if Close[ LinearRegPeriod ] > 0 then
LRS = LinearRegSlope( Close , LinearRegPeriod )
/ Close[ LinearRegPeriod ]*100 ;
if VFI1[ LinearRegPeriod ] > 0 then
LRSI = LinearRegSlope( VFI1, LinearRegPeriod )
/ VFI1[ LinearRegPeriod ]*100 ;
KatsanosDivergence =
XAverage( LRSI - LRS, 3 ) * 100 ;
end ;
{ enter long }
if KatsanosDivergence[ 1 ] > TradeThreshold
and KatsanosDivergence[ 1 ] > KatsanosDivergence
and LRSI > 0
then
Buy next bar at Market ;
{ exit long }
if KatsanosDivergence < 0 and LRSI < 0 then
Sell next bar at Market ;
Strategy: Katsanos VFI Pattern
inputs:
VFIEnterL( -2 ),
MA( 40 ),
LRPeriod( 20 ),
LRC( 30 ),
UB( .1 ),
LB( -.05 ),
VFIExitAngle( -40 ),
VFIExitL( -2 ),
Coef( .2 ),
VCoef( 2.5 ),
Period( 130 ),
VFISmoothing( 3 ) ;
variables:
oCutOff( 0 ),
oVC( 0 ),
oMF( 0 ),
oVFI( 0 ),
MySmoothedVFI( 0 ),
MyVolume( 0 ) ;
MyVolume = iff( BarType < 2, Ticks, Volume ) ;
MySmoothedVFI = VFISmooth( Coef, VCoef, Period,
VFISmoothing, MyVolume, oCutOff, oVC, oMF, oVFI ) ;
if BarNumber > 2 * Period then
begin
if MarketPosition = 0
and oVFI > VFIEnterL
and LinearRegAngleFC( oVFI, LRPeriod ) > 0
and oVFI > XAverage( oVFI, MA )
and LinearRegSlopeFC( C, LRC ) < UB
* LinearRegValue( C , LRC, LRC - 1 ) / 100
and LinearRegSlopeFC( C, LRC ) > LB
* LinearRegValue( C, LRC, LRC - 1 ) / 100
then
Buy ( “BUY” ) next bar at market ;
if LinearRegAngle( oVFI, LRPeriod ) < VFIExitAngle
or oVFI < VFIExitL
then
Sell ( “VFI EXIT” ) next bar at market ;
end ;
Strategy: Katsanos VFI MA Cross
Inputs:
Coef( .2 ),
VCoef( 2.5 ),
Period( 1305 ),
SmoothedPeriod( 3 ),
LongVFILen( 25 ),
ShortVFILen( 11 ) ;
variables:
oCutOff( 0 ),
oVC( 0 ),
oMF( 0 ),
oVFI( 0 ),
MyVFI( 0 ),
MyVolume( 0 ),
LongMA( 0 ),
ShortMA( 0 ) ;
MyVolume = iff( BarType < 2, Ticks, Volume ) ;
MyVFI = VFISmooth( Coef, VCoef, Period, SmoothedPeriod,
MyVolume, oCutOff, oVC, oMF, oVFI ) ;
LongMA = XAverage( MyVFI, LongVFILen ) ;
ShortMA = XAverage( MyVFI, ShortVFILen ) ;
if ShortMA crosses over LongMA then
buy next bar at market ;
if LongMA crosses over ShortMA then
sell next bar at market ;
2018-03-05
232
글번호 117132
답변완료
시작시간 조절
아래수식에 대해
입력시간부터 장시작으로 인식하는 시간조절 input 추가바랍니다.
***************
input : 틱(7),차수(2);
var : T(0),cnt(0);
if Bdate != Bdate[1] Then{
T = 0;
cnt = 0;
}
if T <= 0 and C >= O+PriceScale*틱 Then{
T = 1;
cnt = cnt+1;
if cnt == 차수 Then
buy();
}
if T >= 0 and C <= O+PriceScale*틱 Then{
T = -1;
cnt = cnt+1;
if cnt == 차수 Then
sell();
}
2018-03-05
168
글번호 117131
답변완료
지표 변환
B = sum(if(C >= O*(1+A/100) or (C(1)*1.02<=H and C>=O) or (C(2)>O(2)*1.01 and C(1)>O(1)*1.01 and C>=O)
, V, if(C <= O*(1-A/100) or (C < O and C(1)*1.03 <= H) or (C(1)*0.99>=C and C < O)
or (C(1)*0.97>=L and C < O) or (H(1)*0.97 > C and O>C) , -V, 0)));
D = valuewhen(1, date == 날짜 and date(1) != 날짜, B(1));
B - D
예스트레이더에 맞게 변환 좀 부탁드릴게요 ㅜㅜ
2018-03-05
185
글번호 117130
답변완료
기준봉을 1로 할 경우 마지막 봉인지 확인하는 방법 문의
안녕하십니까.
종목 검색 프로그램 작성중 마지막 봉인지 확인하는 방법에 대하여 문의 드립니다.
if LastBarOnChart == 1 then Find(1);
위와같이 LastBarOnChart 을 사용할 경우
기준봉이 0 일때는 검색이 되나 기준봉을 1 로 할 경우 검색이 안됩니다.
기준봉을 0 이 아닌 다른 값으로 할 경우 어떻게 해야 하는지
확인 부탁 드립니다.
감사합니다.
2018-03-04
207
글번호 117129
nicejon 님에 의해서 삭제되었습니다.
2018-03-04
58
글번호 117128