커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
4539
글번호 230811
지킴이 님에 의해서 삭제되었습니다.
2016-09-10
1
글번호 101871
답변완료
수식부탁드립니다
안녕하세요 항상 감사드립니다
1. 120틱차트에서 60틱의 아래수식 지표가 실현되도록 부탁드립니다
input : P1(2);
var1 = MedianPrice;
var2 = ADX(P1);
if var2 > var2[1] Then
var3 = 13; #상승시 굵기 13
Else
var3 = 2; #하락시 굵기 2
if var1 > var1[1] Then
plot1(var1,"MP",YELLOW,def,var3);
Else
plot1(var1,"MP",BLACK,def,var3);
2. 틱봉에서 1개 틱봉시작을 기준으로 상승하면 매수 하락하면 매도 그리고 그 다음 틱봉으로 계속 이어서 매수매도발생 시스템식 부탁드립니다
감사합니다
2016-09-12
143
글번호 101870
답변완료
부탁드립니다.
안녕하세요.수고가 많으십니다.
아래 시스템식의 매수와 매도 신호를 검색식에서 표시할수 있도록 부탁합니다.
Input : Period(9);
Var : value(0);
value = CCI(Period);
# 매수/매도청산
If CrossUp(value,-100) Then
{
Buy();
}
# 매도/매수청산
If CrossDown(value,100) Then
{
Sell();
}
2016-09-10
118
글번호 101869
답변완료
문의드립니다.
Input:length(12);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),
Text1(0),처리구분(""),T(0);
Array:고점[10,2](0),저점[10,2](0); //가격,위치
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and
Lowest(L,length) == L and lastLoVal <> L Then
{
If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then
처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then
처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
TL_Delete(TL2);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],
sDate[eBar],sTime[eBar],고점[1,1]);
TL2 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],
sDate[eBar],sTime[eBar],저점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],
NumToStr(고점[1,1],2));
Text_SetStyle(Text1, 2, 1);
TL_SetSize(TL2,2);
TL_SetColor(TL2,green);
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and
TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
TL_Delete(TL2);
Text_Delete(Text1);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],
sDate[eBar],sTime[eBar],저점[1,1]);
TL2 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],
sDate[eBar],sTime[eBar],고점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],
NumToStr(저점[1,1],2));
Text_SetStyle(Text1, 2, 0);
TL_SetSize(TL2,2);
TL_SetColor(TL2,yellow);
}
}
TL_SetSize(TL1,2);
TL_SetColor(TL1,red);
2016-09-12
167
글번호 101868
답변완료
수식문의
안녕하세요
하기 수식에서 한가지 보충하고 싶습니다.
input : CCIP(10),RSIP(10),sto1(10),sto2(5),P1(5),P2(20);
input : loss(50),Profit11(20),Profit12(30),Profit2(50);
var : CCIV(0),RSIV(0),STOK(0),Bcond(false),Scond(false),mav1(0),mav2(0),T(0);
CCIV = CCI(CCIP);
RSIV = RSI(RSIP);
STOK = StochasticsK(sto1,sto2);
mav1 = ma(C,P1);
mav2 = ma(C,P2);
Bcond = CCIV <= 100 and RSIV <= 70 and Stok <= 80;
Scond = CCIV >= -100 and RSIV >= 30 and Stok >= 20;
#모두 과매수권을 벗어날째 매수(3개봉차이허용)
if Bcond == true and Bcond[1] == false and
countif(CrossDown(CCIV,100),2) >= 1 and
countif(CrossDown(RSIV,70),2) >= 1 and
countif(CrossDown(stok,80),2) >= 1 Then
T = -1;
#모두 과매도권을 벗어날째 매도(3개봉차이허용)
if Scond == true and Scond[1] == false and
countif(CrossUp(CCIV,-100),2) >= 1 and
countif(CrossUp(RSIV,30),2) >= 1 and
countif(CrossUp(stok,20),2) >= 1 Then
T = 1;
if T == 1 and crossup(mav1,mav2) and mav2 > mav2[1] Then
buy();
if T == -1 and CrossDown(mav1,mav2) and mav2 < mav2[1] Then
sell();
상기 수식으로 진행하는데...
- 볼린져 상단밴드가 60 이평 아래에 있을때는 매수금지,
반대로 하단밴드가 60이평 위에 있을때는 매도금지 수식을 추가 부탁드립니다.
다음 신호에서 진입하는 것으로 부탁드립니다.
감사합니다.
2016-09-10
137
글번호 101867
답변완료
평균 가격을 표시하고 싶습니다.
항상 빠른 답변에 감사드립니다.
틱봉 차트에서 최근 7개 캔들의 평균 가격을 실선으로 표시하는 지표식좀 부탁합니다.
2016-09-10
142
글번호 101866
답변완료
종목검색하는 방법
가입한지 얼마되지 않은 초보사용자 입니다.
에너지<<< 라는 지표를 검색하고 싶은데요 어떻게 해야 하나요?
e1 값이 90이상 검색하고 싶읍니다. 예스트레이더 입니다.
조언부탁드립니다.
2016-09-10
128
글번호 101865
답변완료
문의드립니다
1)input : Left(3),Right(3);
var :TL1(0),TL2(0);
if SwingHigh(1,H,Left,right,Left+Right+1) != -1 Then{
var1 = sdate[right];
var2 = stime[right];
var3 = H[right];
var11 = var1[1];
var21 = var2[1];
var31 = var3[1];
TL_Delete(TL1);
if var31 > 0 Then{
TL1 = TL_New(var11,var21,var31,var1,var2,var3);
TL_SetColor(TL1,RED);
TL_SetExtRight(TL1,true);
}
}
if SwingLow(1,L,Left,right,Left+Right+1) != -1 Then{
var4 = sdate[right];
var5 = stime[right];
var6 = L[right];
var41 = var4[1];
var51 = var5[1];
var61 = var6[1];
TL_Delete(TL2);
if var61 > 0 Then{
TL2 = TL_New(var41,var51,var61,var4,var5,var6);
TL_SetColor(TL2,BLUE);
TL_SetExtRight(TL2,true);
}
}
상승시저가추세선만나오게하고 (고가추세선생략 윗선)아래선1개만나오게추세선이무너지고돌파되어추세가바뀌면 반대로 하락추세선 1개만 (저가추세선생략아래선)윗선만나오게 부탁드립니다 추세선두께는 3정도~~만약안된다면기존수식에서선이아닌▲모양으로해주세요
2)Input:length(20);
Var:j(0),lastHiVal(0),lastLoVal(0),sBar(0),eBar(0),TL1(0),TL2(0),TL3(0),Text1(0),처리구분(""),
TL_Val1(0),TL_Val2(0);
Var:TL11(0),TL12(0),TL13(0),TL14(0),TL15(0),TL16(0),TL17(0),TL18(0),TL19(0),TL20(0);
Var:TL21(0),TL22(0),TL23(0),TL24(0),TL25(0),TL26(0),TL27(0),TL28(0),TL29(0),TL30(0),mav(0),T(0);
Array:고점[10,2](0),저점[10,2](0);
처리구분 = "";
If Highest(H,length) == H and lastHiVal <> H and Lowest(L,length) == L and lastLoVal <> L Then
{ If 저점[1,1] > L Then 처리구분 = "저점처리";
If 고점[1,1] < H Then 처리구분 = "고점처리";
}
Else If Highest(H,length) == H and lastHiVal <> H Then 처리구분 = "고점처리";
Else If Lowest(L,length) == L and lastLoVal <> L Then 처리구분 = "저점처리";
If 처리구분 == "고점처리" Then
{
lastHiVal = H;
If 고점[1,2] < 저점[1,2] Then
{
For j = 10 DownTo 2
{
고점[j,1] = 고점[j-1,1];
고점[j,2] = 고점[j-1,2];
}
}
If 고점[1,2] < 저점[1,2] or 고점[1,1] < H Then
{
고점[1,1] = H;
고점[1,2] = Index;
sBar = Index - 저점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
If 고점[3,1][1] < 고점[2,1][1] and 고점[2,1][1] > 고점[1,1][1] and 저점[2,1][1] < 저점[1,1][1] Then
TL_Delete(TL2);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],저점[1,1],sDate[eBar],sTime[eBar],고점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],고점[1,1],NumToStr(고점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
Text_SetStyle(Text1, 2, 1);
If 고점[3,1] < 고점[2,1] and 고점[2,1] > 고점[1,1] and 저점[2,1] < 저점[1,1] Then
{
sBar = Index - 저점[2,2];
eBar = Index - 저점[1,2];
}
}
}
If 처리구분 == "저점처리" Then
{
lastLoVal = L;
If 저점[1,2] < 고점[1,2] Then
{
For j = 10 DownTo 2
{
저점[j,1] = 저점[j-1,1];
저점[j,2] = 저점[j-1,2];
}
}
If 저점[1,2] < 고점[1,2] or 저점[1,1] > L Then
{
저점[1,1] = L;
저점[1,2] = Index;
sBar = Index - 고점[1,2];
eBar = 0;
If TL_GetBeginDate(TL1) == sDate[sBar] and TL_GetBeginTime(TL1) == sTime[sBar] Then
{
TL_Delete(TL1);
Text_Delete(Text1);
If 저점[2,1][1] < 저점[1,1][1] and 저점[2,1][1] < 저점[3,1][1] and 고점[2,1][1] > 고점[1,1][1] Then
TL_Delete(TL3);
}
TL1 = TL_New(sDate[sBar],sTime[sBar],고점[1,1],sDate[eBar],sTime[eBar],저점[1,1]);
Text1 = Text_New(sDate[eBar],sTime[eBar],저점[1,1],NumToStr(저점[1,1],2));
PlaySound("C:₩예스트레이더₩data₩Sound₩alert.wav");
Text_SetStyle(Text1, 2, 0);
If 저점[2,1] < 저점[1,1] and 저점[2,1] < 저점[3,1] and 고점[2,1] > 고점[1,1] Then
{
sBar = Index - 고점[2,2];
eBar = Index - 고점[1,2];
}
}
}
mav = ma(C,20);
상승선이확정되면 블루색(단 확정된봉고가를돌파하면레드색)반대로 하락선이확정되면 레드색(확정된봉저가를돌파하면블루색) 으로 강조식부탁드립니다~~
2016-09-11
148
글번호 101864
웃고살자 님에 의해서 삭제되었습니다.
2016-09-11
13
글번호 101863