커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
5493
글번호 230811
답변완료
함수요청
안녕하세요?
아래 전략에 대하여 스크립트 작성 요청드립니다.
항셍지수 선물 1분봉(data1)으로 T장에서 거래를 하고 합니다.
참조종목을 항셍지수 선물 5분봉(data2), 10분봉(data3), 15분봉(data4)으로 설정합니다.
10시 15분 시가가 data1 and data2의 볼린저밴드 하단을 동시에 이탈하여 갭하락시 혹은 data3 or data4의 볼린저밴드 하단을 이탈하여 갭하락시 익봉 시가에 매수 진입
10시 15분 시가가 data1 and data2의 볼린저밴드 상단을 동시에 이탈하여 갭상승시 혹은 data3 or data4의 볼린저밴드 상단을 이탈하여 갭상승시 익봉 시가에 매도 진입
현재가가 data1 or data2 or data3 or data4의 볼린저밴드 상단을 이탈하여 봉완성 시가에 매수청산
현재가가 data1 or data2 or data3 or data4의 볼린저밴드 하단을 이탈하여 봉완성 시가에 매도청산
2019-11-25
195
글번호 133885
답변완료
강조식 하나 부탁합니다
var1 = ma(c,20);
if MarketPosition >= 0
and dayindex > 0
and countif(C<O or (C==O and C <= C[1]),2) == 2
and countif(C<O,2) >= 1
and C < var1
위 식은 강조식으로 변형하면요
아래식으로 하는것이 맞는지 모르겠네요
틀리면 수정좀 부탁합니다
var : T(0),TL1(0),L1(0),TL2(0),H1(0);
var1 = ma(C,20);
if T <= 0
and dayindex > 0
and countif(C<O or (C==O and C <= C[1]),2) == 2
and countif(C<O,2) >= 1
and C < var1
Then
{
PlotPaintBar(H,L,"강조",GREEN);
T = 1;
L1 = l;
TL1 = TL_New(sdate,stime,L1,sdate,stime,L1);
TL_SetColor(TL1,RED);
TL_SetStyle(TL1,3);
}
if T >= 0
and and dayindex > 0
and countif(C<O or (C==O and C <= C[1]),2) == 2
and countif(C<O,2) >= 1
and C > var1 Then
{
PlotPaintBar(H,L,"강조",BLACK);
T = -1;
H1 = H;
TL2 = TL_New(sdate,stime,L1,sdate,stime,L1);
TL_SetColor(TL2,BLUE);
TL_SetStyle(TL2,3);
}
if T == 1 Then
{
if L < L1 Then
L1 = L;
TL_SetBegin(TL1,TL_GetBeginDate(TL1),TL_GetBeginTime(TL1),L1);
TL_SetEnd(TL1,sdate,stime,L1);
}
if T == -1 Then
{
if H > H1 Then
H1 = H;
TL_SetBegin(TL2,TL_GetBeginDate(TL2),TL_GetBeginTime(TL2),H1);
TL_SetEnd(TL2,sdate,stime,H1);
}
2019-11-25
197
글번호 133881
답변완료
지표문의
1.아래는 매물대 지표인데요
2.아래지표를 9시30분 부터 계산해서 10시 30분 까지 만 표시 한걸 보구 싶어요
(9시 장 시작 연장이 아니라 9시30분봉 부터10시30분 봉까지)
수정좀해 주세요
3.참고로 특정시가 만 지표를 표시 해볼려면 지표 표시 하는법두 부탁드려요
Input:Period(60),Percent(50);
Var:arr(0),j(0),cnt(0),HH(0),LL(0),Tick(0),TickVol(0),PrcVol(0),TotVol(0),SubTotVol(0),
MaxArr(0),UpArr(0),DnArr(0),MaxPrc(0),UpPrc(0),DwnPrc(0),Vol1(0),Vol2(0);
Array:Prc[100](0),Vol[100](0);
HH = Highest(H,Period);
LL = Lowest(L,Period);
if CodeCategoryEX() == 51 then
Tick = round((HH-LL)/100,2);
else
Tick = Ceiling((HH-LL)/100/_TickValue())*_TickValue();
Prc[0] = HH;
Vol[0] = 0;
for arr = 1 to 99 {
Prc[arr] = Prc[arr-1] - Tick;
Vol[arr] = 0;
}
for j = 0 to Period-1 {
cnt = 0;
for arr = 0 to 99 {
if L[j] <= Prc[arr] and Prc[arr] <= H[j] then
cnt = cnt + 1;
}
TickVol = C[j]/cnt;
for arr = 0 to 99 {
if L[j] <= Prc[arr] and Prc[arr] <= H[j] then {
Vol[arr] = Vol[arr] + TickVol;
}
}
}
TotVol = 0;
PrcVol = 0;
MaxArr = 2;
for arr = 0 to 99 {
TotVol = TotVol + Vol[arr];
if L <= Prc[arr] and Prc[arr] <= H then {
PrcVol = PrcVol + Vol[arr];
}
if arr >= 2 and arr <= 97 then {
if Vol[MaxArr-2]+Vol[MaxArr-1]+Vol[MaxArr]+Vol[MaxArr+1]+Vol[MaxArr+2] <
Vol[arr-2] +Vol[arr-1] +Vol[arr] +Vol[arr+1] +Vol[arr+2] then
MaxArr = arr;
}
}
UpArr = MaxArr;
DnArr = MaxArr;
SubTotVol = Vol[MaxArr];
for j = 0 to 99 {
Vol1 = iff(UpArr-1>=0,Vol[UpArr-1],0);
Vol2 = iff(DnArr+1<=99,Vol[DnArr+1],0);
if Vol1 > Vol2 then {
SubTotVol = SubTotVol + Vol1;
UpArr = UpArr - 1;
}
else if Vol1 < Vol2 then {
SubTotVol = SubTotVol + Vol2;
DnArr = DnArr + 1;
}
else if Vol1 == Vol2 and Vol1 > 0 and Vol2 > 0 then {
SubTotVol = SubTotVol + Vol1;
UpArr = UpArr - 1;
if SubTotVol < TotVol * Percent/100 then {
SubTotVol = SubTotVol + Vol2;
DnArr = DnArr + 1;
}
}
else if Vol1 + Vol2 == 0 then {
if UpArr >= (99 - DnArr) then Uparr = UpArr - 1;
else DnArr = DnArr + 1;
}
if SubTotVol >= TotVol * Percent/100 then
j = 99;
}
MaxPrc = Prc[MaxArr];
UpPrc = Prc[UpArr];
DwnPrc = Prc[DnArr];
plot1(UpPrc);
Plot2(DwnPrc);
Plot3(MaxPrc);
4. 그럼 즐거운 하루 되세요
2019-11-25
240
글번호 133875
답변완료
Entry가 한번밖에 안 됩니다.
input : P1(10),P2(20),Period(20),배수(1),배수2(2);
var : FK1(0),FK2(0),ATRV(0),Bcond(false);
FK1 = FastK(P1);
FK2 = FastK(P2);
ATRV = ATR(Period);
Bcond = MarketPosition == 0 and MarketPosition(1) == 1 and PositionProfit(1) > 0;
if crossup(FK2,80) and bcond == false Then
buy("b");
if MarketPosition == 1 then
{
if CrossDown(FK1,20) Then
{
exitlong("bx");
}
if !CrossDown(FK1,20) and MaxEntries < 4 Then
{
buy("bb",AtStop,LatestEntryPrice(0)+ATRV,배수);
}
ExitLong("bl",AtStop,LatestEntryPrice(0)-ATRV*배수2);
}
위 식에서 한번 롱포지션을 청산하고 거래가 끝나 버리네요.
해결 부탁드립니다.
2019-11-25
172
글번호 133872
짜왕 님에 의해서 삭제되었습니다.
2019-11-25
15
글번호 133867
짜왕 님에 의해서 삭제되었습니다.
2019-11-25
36
글번호 133866
짜왕 님에 의해서 삭제되었습니다.
2019-11-25
0
글번호 133863
답변완료
추가수식부탁드립니다.
안녕하세요...글번호61515에 추가라인부탁드립니다.
시가갭중심라인
전일종가+당일시가=중심가 라인
수고하세요...꾸벅
2019-11-25
227
글번호 133861
미스타as1 님에 의해서 삭제되었습니다.
2019-11-25
0
글번호 133860