커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
3678
글번호 230811
답변완료
data2의 지표
안녕하세요?
data2의 지표를 시뮬레이션 차트 화면에서 볼 수 있을까요?
지표를 추가하면 data1의 지표만 적용되는것 같아서요.
가능하면 방법 가이드 부탁드립니다.
2020-07-27
1423
글번호 141034
답변완료
한번 더 확인하는 시스템
안녕하세요?
아래와 같이 수식을 적용해서 100틱 이상 갔다가 본전 부근에 오면 팔도록 시스템해서 사용하고 있습니다.
if LL <= EntryPrice-PriceScale*100 Then
Exitshort("본청10틱",AtStop,EntryPrice-PriceScale*10);
궁금한것은 이렇게 해두어도 가끔 차트화면에서는 [본청10틱]이 나와있고 청산한걸로 보이지만 실제로 미결제잔고에는 처리가 안된채로 남아있는 경우가 가끔 있더라구요!
남아있는지 여부를 조사해서 한번 더 청산시킬 수 있는 방법은 없을지요?
2020-07-27
1543
글번호 141033
답변완료
문의드립니다
68522번재문의드립니다씨스템신호와 지표신호가 맞지않은데 다시한번검토부탁드립니다
2020-07-27
1303
글번호 141032
답변완료
부탁 드립니다.
콜 두종목(data1, data3)과 풋 두종목(data2, data4)이 있습니다.
콜 두종목의 스프레드와 풋 두종목의 스프레드를 plot 하고.
콜, 풋의 스프레드 합을 구해서 이것의 이평선을 만들고 싶습니다.
이평선은 5, 20, 60(input 문으로 변경할수 있게)..
이평선이 상승이면 red, 하락이면 blue...
당일치만 나타나게도 하고 싶습니다..
항상 감사합니다..
2020-07-27
1470
글번호 141018
답변완료
지표
파라볼릭 수식을 당일시작부터 종가까지만 계산하는 수식을부탁드림니다
미리감사드림니다
2020-07-27
1373
글번호 141016
답변완료
시스템작성
첫 번째 시스템
이 시스템은 주식매매에 사용할 시스템입니다. 데이트레이딩 시스템입니다. 예를 들어 주식을 매수할 때 전일종가가 9880원 이라 가정하고
1.오늘 장중에 주가가 10000원(변수1)이상으로 올라오며는 매수,
2.12시(변수2)까지는 아래 수식에 해당조건이 되어도 어떤 거래도 하지않음.
3.12시부터 계산해서 매수한 주식의 주가가 10500원(변수3)이상인 가격에서 60평선(변수4)이 상승하다가 하락으로 꺽이며는 전량매도.
4.만약 신호가 나오지 않았으며는 3시에 전량 청산.
두 번째 시스템
위와 비슷한 데 약간 다릅니다.
이 시스템은 주식매매에 사용할 시스템입니다. 데이트레이딩 시스템입니다. 예를 들어 주식을 매수할 때 전일종가가 9880원 이라 가정하고
1.오늘 장중에 주가가 10000원(변수1)이상으로 올라오며는 매수,
2.12시(변수2)까지는 아래 수식에 해당조건이 되어도 어떤 거래도 하지않음.
3.12시부터 계산해서 매수한 주식의 주가가 10500원(변수3)이상일 때 5평선(변수4)이 20평선(변수5)에 데드크로스가 나오며는 전량매도.
4.만약 신호가 나오지 않았으며는 3시에 전량 청산.
감사합니다!
2020-07-27
1594
글번호 141012
답변완료
재문의
질문입니다
1>60분의 식을 10분에 적용시
라인이 나오지않아 재검토부탁드립니다
2>월주일식도 10분에 적용해보았읍니다
월식적용(주일60분10분등등)
주식적용(일60분10분등등)
일식적용(60분10분등등)
적용중입니다
분봉식
Input : ntime(60),Length1(5),Length2(20);
var : S1(0),D1(0),TM(0),TF(0);
Var : TLen1(0),TLen2(0),i1(0),i2(0),cnt(0);
var : Hsum1(0),Hsum2(0),Havg1(0),Hma1(0);
var : Lsum1(0),Lsum2(0),Lavg1(0),Lma1(0);
var : HLsum1(0),HLsum2(0),HLavg1(0),HLma1(0);
var : Hcum1(0),Hcum2(0),Havg2(0),Hma2(0);
var : Lcum1(0),Lcum2(0),Lavg2(0),Lma2(0);
var : HLcum1(0),HLcum2(0),HLavg2(0),HLma2(0);
array : HH[100](0),LL[100](0);
TLen1 = Ceiling((Length1 + 1) * .5);
TLen2 = Ceiling((Length2 + 1) * .5);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%ntime;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and ntime > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and ntime > 1 and TM >= TM[1]+ntime) or
(Bdate == Bdate[1] and ntime == 1 and TM > TM[1]) Then
{
HH[0] = h;
LL[0] = l;
for cnt = 1 to 99
{
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
}
if HH[0] > 0 and H > HH[0] then
HH[0] = H;
if LL[0] > 0 and L < LL[0] then
LL[0] = L;
if HH[TLen1*2] > 0 and LL[TLen1*2] > 0 then
{
Hsum2 = 0;
Lsum2 = 0;
HLsum2 = 0;
for i1 = 0 to TLen1-1
{
Hsum1 = 0;
Lsum1 = 0;
HLsum1 = 0;
for i2 = i1+0 to TLen1-1+i1
{
Hsum1 = Hsum1 + HH[i2];
Lsum1 = Lsum1 + LL[i2];
HLsum1 = HLsum1 + (HH[i2]+LL[i2])/2;
}
Havg1 = Hsum1/TLen1;
Hsum2 = Hsum2 + Havg1;
Lavg1 = Lsum1/TLen1;
Lsum2 = Lsum2 + Lavg1;
HLavg1 = HLsum1/TLen1;
HLsum2 = HLsum2 + HLavg1;
}
Hma1 = Hsum2/TLen1;
Lma1 = Lsum2/TLen1;
HLma1 = HLsum2/TLen1;
}
if HH[TLen2*2] > 0 and LL[TLen2*2] > 0 then
{
Hcum2 = 0;
Lcum2 = 0;
HLcum2 = 0;
for i1 = 0 to TLen2-1
{
Hcum1 = 0;
Lcum1 = 0;
HLcum1 = 0;
for i2 = i1+0 to TLen2-1+i1
{
Hcum1 = Hcum1 + HH[i2];
Lcum1 = Lcum1 + LL[i2];
HLcum1 = HLcum1 + (HH[i2]+LL[i2])/2;
}
Havg2 = Hcum1/TLen2;
Hcum2 = Hcum2 + Havg2;
Lavg2 = Lcum1/TLen2;
Lcum2 = Lcum2 + Lavg2;
HLavg2 = HLcum1/TLen2;
HLcum2 = HLcum2 + HLavg2;
}
Hma2 = Hcum2/TLen2;
Lma2 = Lcum2/TLen2;
HLma2 = HLcum2/TLen2;
}
Plot1(Hma1, "고가삼각가중1");
Plot2(Hma2, "고가삼각가중2");
Plot3(Lma1, "저가삼각가중1");
Plot4(Lma2, "저가삼각가중2");
Plot5(HLma1, "중간삼각가중1");
Plot6(HLma2, "중간삼각가중2");
Plot7(Hma2+abs(Hma2-Lma2), "20고가+진동폭");
Plot8(Lma2-abs(Hma2-Lma2), "20저가-진동폭");
}
2020-07-27
1457
글번호 141007
답변완료
지표
항상감사합니다
60분
주간장60분의 고저7개표시
10분봉에 나타나기원합니다
9~10
10~11. . . .....
-----------------------------------
주신수식값은 2라인만 나옵니다
안녕하세요
예스스탁입니다.
아래식 참고하시기 바랍니다.
60분 미만의 주기에서 60분봉의 고가와 저가를 그리는 지표식입니다.
input : N분(60);
var : S1(0),D1(0),TM(0),TF(0),cnt(0);
Array : HH[50](0),LL[50](0);
if Bdate != Bdate[1] Then
{
S1 = TimeToMinutes(stime);
D1 = sdate;
}
if D1 > 0 then
{
if sdate == D1 Then
TM = TimeToMinutes(stime)-S1;
Else
TM = TimeToMinutes(stime)+1440-S1;
TF = TM%N분;
if Bdate != Bdate[1] or
(Bdate == Bdate[1] and N분 > 1 and TF < TF[1]) or
(Bdate == Bdate[1] and N분 > 1 and TM >= TM[1]+N분) or
(Bdate == Bdate[1] and N분 == 1 and TM > TM[1]) Then
{
HH[0] = H;
LL[0] = L;
for cnt = 1 to 49
{
HH[cnt] = HH[cnt-1][1];
LL[cnt] = LL[cnt-1][1];
}
}
if H > HH[0] Then
HH[0] = H;
if L < LL[0] Then
LL[0] = L;
if HH[0] > 0 And LL[0] > 0 then
{
Plot1(HH[0],"현재N분고가");
Plot2(LL[0],"현재N분저가");
}
/* 60분기준 전봉
if HH[1] > 0 And LL[1] > 0 then
{
Plot3(HH[1],"직전N분고가");
Plot4(LL[1],"직전N분저가");
}
*/
}
즐거운 하루되세요
> 에리카 님이 쓴 글입니다.
> 제목 : 지표첨삭
> 항상감사합니다
10분봉에 60분고저값나타내려하는데
추가수식 필요해요
시간이흐르니 지표값이 이전값이 사라져요
if stime < 100000 Then
{
var1 = DayHigh;
var2 = daylow;
}
plot1(var1);
plot2(var2);
if stime < 110000 Then
{
var3 = DayHigh;
var4 = daylow;
}
plot3(var3);
plot4(var4);
if stime < 120000 Then
{
var5 = DayHigh;
var6 = daylow;
}
plot5(var5);
plot6(var6);
if stime < 130000 Then
{
var7 = DayHigh;
var8 = daylow;
}
plot7(var7);
plot8(var8);
if stime < 140000 Then
{
var9 = DayHigh;
var10 = daylow;
}
plot9(var9);
plot10(var10);
if stime < 150000 Then
{
var11 = DayHigh;
var12 = daylow;
}
plot11(var11);
plot12(var12);
if stime < 160000 Then
{
var13 = DayHigh;
var14 = daylow;
}
plot13(var13);
plot14(var14);
2020-07-27
1465
글번호 140998
답변완료
종목 검색 수식 좀 봐주세요.
input: PE1(30),PE2(60),BE1(1.02),BE2(1.2);
VAR: SUM(0), CNT(0);
VAR1=MA(V,PE2);
VAR2=SAR(0.02,0.2);
VAR3=ma(C,10);
VAr4=MA(L,20);
sum=0;
for cnt = 1 to 10 begin
if V[CNT]<=VAR1[CNT] then
SUM=SUM+1;
end;
if sum>=8 and V>=VAR1*2 and highest(V,PE1)==V then
find(sum);
요렇게 했는데, 종목 검색에서 데이터가 없다고 나옵니다.
검토 좀 부탁 드릴께요.
2020-07-27
1604
글번호 140997