커뮤니티
예스랭귀지 Q&A
답변완료
[공지] 예스랭귀지 AI 어시스턴트, '예스나 AI' 출시 및 무료 체험 안내
안녕하세요, 예스스탁 입니다.복잡한 수식 공부 없이 여러분의 아이디어를 말하면 시스템 트레이딩 언어 예스랭귀지로 작성해주는 서비스예스나 AI(YesNa AI)가 출시되었습니다.지금 예스나 AI를 직접 경험해 보실 수 있도록 20크레딧(질문권 20회)를 무료로 증정해 드리고 있습니다.바로 여러분의 아이디어를 코드로 변환해보세요.--------------------------------------------------🚀 YesNa AI 핵심 기능- 지표식/전략식/종목검색식 생성: 자연어로 요청하면 예스랭귀지 문법에 맞는 코드를 작성합니다.- 종목검색식 변환 지원: K증권의 종목 검색식을 예스랭귀지로 변환 지원합니다.- 컴파일 검증: 작성된 코드가 실행 가능한지 컴파일러를 통해 문법 검증을 거쳐 결과물을 제공합니다.상세한 서비스 개요 및 활용 방법은 [서비스 소개 페이지]에서 확인하실 수 있습니다.▶ 서비스 소개 페이지: 바로가기서비스 사용 유의사항 및 결제 환불정책은 [이용약관]을 참고 부탁드립니다.▶ 서비스 이용약관: 바로가기💬 이용 문의사용 중 문의사항은 [프로그램 사용법 Q&A] 게시판에서 [예스나 AI] 카테고리를 설정 후 문의해 주시면 상세히 안내해 드리겠습니다.--------------------------------------------------앞으로도 AI를 활용한 다양한 트레이딩 기능들을 지속적으로 선보일 예정입니다.많은 관심과 기대 부탁드립니다.
2026-02-27
6303
글번호 230811
답변완료
수식 검토 요청드립니다.
안녕하세요
아래 수식을 적용해 보면 신호가 나오질 않습니다.
검토 부탁드립니다.
> 예스스탁 님이 쓴 글입니다.
> 제목 : Re : 수식변경 요청드립니다.
> 안녕하세요
예스스탁입니다.
input : 거래시간1(1), 시작시간1(160000), 끝시간1(045500),익절틱수 (30),손절틱수 (15);
input : P1(5),P2(20);
var : AA(0),BB(0),HH(0),LL(0),vol(0);
if 거래시간1 == 1 then
condition3 = (stime>=시작시간1 or stime<=끝시간1);
Else if 거래시간1 == 2 then
condition3 = (stime>=시작시간1 and stime<=끝시간1);
Else
condition3 = true;
AA = ma(C,P1);
BB = ma(C,P2);
if TotalTrades > TotalTrades[1] Then{
if IsExitName("bx",1) or IsExitName("sx",1) Then
vol = MaxContracts(1)*2;
Else
Vol = 1;
}
if MarketPosition == 0 and TotalTrades == TotalTrades[1] and
Condition3 == true and
((BB > BB[1] and C < AA and C < O) or (BB > BB[1] and C < AA and C < BB and C < O)) Then
Buy("b",OnClose,def,vol);
if MarketPosition == 1 Then{
HH = Floor((highest(H,BarsSinceEntry) - EntryPrice)/(PriceScale*손절틱수));
ExitLong("bx",AtStop,(EntryPrice-(PriceScale*손절틱수))+(PriceScale*손절틱수)*HH);
}
if MarketPosition == -1 Then{
LL = Floor((Lowest(L,BarsSinceEntry)-EntryPrice)/(PriceScale*손절틱수));
ExitShort("sx",AtStop,(EntryPrice+(PriceScale*손절틱수))-(PriceScale*손절틱수)*LL);
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
if stime == 끝시간1 or (stime > 끝시간1 and stime[1] < 끝시간1) Then{
if MarketPosition == 1 Then
ExitLong();
if MarketPosition == -1 Then
ExitShort();
}
즐거운 하루되세요
> 고박사122 님이 쓴 글입니다.
> 제목 : 수식변경 요청드립니다.
> 안녕하세요.
다음 식의 변경을 요청드립니다.
추가해야 할 조건은 첫진입 계약은 1계약으로 시작하고 손절 시 그다음 진입시 계약수가 앞전 계약수의 2배가 되도록 하며 수익 시 다시 1계약으로 셋팅되도록 부탁드립니다.
input : 거래시간1(1), 시작시간1(160000), 끝시간1(045500),익절틱수 (30),손절틱수 (15);
input : P1(5),P2(20);
var : AA(0),BB(0),HH(0),LL(0);
if 거래시간1 == 1 then
condition3 = (stime>=시작시간1 or stime<=끝시간1);
Else if 거래시간1 == 2 then
condition3 = (stime>=시작시간1 and stime<=끝시간1);
Else
condition3 = true;
AA = ma(C,P1);
BB = ma(C,P2);
if MarketPosition == 0 and TotalTrades == TotalTrades[1] and
Condition3 == true and
((BB > BB[1] and C < AA and C < O) or (BB > BB[1] and C < AA and C < BB and C < O)) Then
Buy();
if MarketPosition == 1 Then{
HH = Floor((highest(H,BarsSinceEntry) - EntryPrice)/(PriceScale*손절틱수));
ExitLong("bx",AtStop,(EntryPrice-(PriceScale*손절틱수))+(PriceScale*손절틱수)*HH);
}
if MarketPosition == -1 Then{
LL = Floor((Lowest(L,BarsSinceEntry)-EntryPrice)/(PriceScale*손절틱수));
ExitShort("sx",AtStop,(EntryPrice+(PriceScale*손절틱수))-(PriceScale*손절틱수)*LL);
}
SetStopProfittarget(PriceScale*익절틱수,PointStop);
if stime == 끝시간1 or (stime > 끝시간1 and stime[1] < 끝시간1) Then{
if MarketPosition == 1 Then
ExitLong();
if MarketPosition == -1 Then
ExitShort();
}
2017-05-23
122
글번호 109795
목마와숙녀 님에 의해서 삭제되었습니다.
2017-05-23
1
글번호 109794
답변완료
수식문의 드립니다.
1. 5일평균거래대금 100백만이상
2. 체결강도 100 이상
3. [일]0봉전 일목균형표(9,26,52) 주가 >= 선행스팬1
4. 5일 매물대 상향 돌파
5. 주가 이평돌파 0봉전 (종가1)이평 종가60 이평 골든크로스
6. [일]0봉전 볼린전밴드(4,2) 종가가 상한선 상향돌파
2017-05-23
165
글번호 109792
답변완료
지표수식 문의합니다
수고많으십니다
오늘 가입한 초보입니다
20 이격선에서 5 이격선을 뺀 선을 보고 싶습니다
수식 부탁드립니다
그리고 제가 원래 이격선 수식을 잘못 건드린것 같은데 그 수식도 함께 부탁드립니다
수고하세요~
2017-05-23
142
글번호 109782
2wnwn 님에 의해서 삭제되었습니다.
2017-05-23
2
글번호 109774
답변완료
잘 부탁드립니다..
수고가 많으십니다.
Input : af(0.02), maxAF(0.2) ;
Var : value(0);
value = csar(af,maxAF);
# 매수/매도청산
If C > value Then
{
Buy();
}
# 매도/매수청산
If C < value Then
{
Sell();
}
위는 일반적인 파라볼락신호입니다. 이신호를 기준으로
1. 국선과 해선 둘로 나눠서 갭을 보정한 신호를 만들어주세요. 동일하게 적용되면 1개면 됩니다.
2. 매수(매도)진입후 0.4% 손절후 바로 동일방향으로 재진입신호가 안나오게 부탁합니다.
3. 매수(매도)진입후 0.4% 손절후 7개봉 이후에 5이평이 20이평 위에(아래에)있을때만 동일방향으로 재진입신호 뜨게 부탁합니다.
4. 매수(매도)진입후 0.5% 수익도달후 0.3% 밀리면 청산할수있게 부탁합니다.
이때도 바로 동일방향으로 재진입신호가 안나오게 부탁합니다.
5. 매수(매도)진입후 0.5% 수익도달후 0.3% 밀리면 청산한 시점에서 7개봉 이후에 5이평이 20이평 위에(아래에)있을때
동일방향으로 재진입신호 뜨게 부탁합니다.
미리 노고에 진심으로 감사드립니다.
2017-05-23
103
글번호 109773
답변완료
문의드립니다.
안녕하세요.
수고많으십니다. 미세먼지 조심하시구요.
다음과 같은 진입조건에서 아래의 수식 좀 알려주시면 감사하겠습니다.
매수진입조건 : 기준선 위에서 MACD 골든크로스 하면 매수진입(매도는 반대)
1.금일 실시간 현재 누적수익을 보기위해 현재의 캔들 위에 아래와 같은 누적틱수를 출력하고 싶습니다.
당일 오전 10시 부터 익일 새벽02시까지의 매매시간 중에 익절,손절,현재누적수익 을 캔들 위에 출력하려면 어떻게 하면되는지요?
예>
익절 : +30 틱
손절 : -10 틱
수익 : +20 틱
감사합니다.
2017-05-23
105
글번호 109772
답변완료
문의드립니다
1 : #==========================================#
2 : # 지표명 : 피보나치 팬(시작일 입력방식)
3 : # 작성자 : 수식지왕
4 : # 블로그 : http://blog.naver.com/yahoosir
5 : #==========================================#
6 : input:방향(1), //1:상승, -1:하락
7 : 시작년월(200303);
8 : var:j(0),고(0),고Bar(0),저(0),저Bar(0),HH(0),LL(0),CC(0);
9 : array:r[7](0),ff[7](0);
10 : #==============================================================================#
11 : # 초기처리 (Initialize Routine)
12 : #==============================================================================#
13 : r[0] = 0;
14 : r[1] = 0.236;
15 : r[2] = 0.382;
16 : r[3] = 0.50;
17 : r[4] = 0.618;
18 : r[5] = 0.764;
19 : r[6] = 1;
20 :
21 : HH = H;
22 : LL = L;
23 : CC = C;
24 :
25 : #==============================================================================#
26 : # 메인처리 (Main Routine)
27 : #==============================================================================#
28 : 고Bar = 고Bar + 1;
29 : 저Bar = 저Bar + 1;
30 :
31 : #=========================================================#
32 : # 상승방향
33 : #=========================================================#
34 : If 방향 >= 0 Then
35 : {
36 : #---------------------------------------------------------#
37 : # 최고/최저점 계산
38 : #---------------------------------------------------------#
39 : if INT(DATE/100) >= 시작년월 and
40 : 고 < HH then
41 : {
42 : 고 = HH;
43 : 고Bar = 0;
44 : }
45 :
46 : if INT(DATE/100) == 시작년월 and
47 : (저 == 0 or 저 > LL) then
48 : {
49 : 저 = LL;
50 : 저Bar = 0;
51 : }
52 :
53 : #---------------------------------------------------------#
54 : # Fibonacci Fan 계산
55 : #---------------------------------------------------------#
56 : For j = 0 To 6
57 : {
58 : ff[j] = (고-저)/(저Bar-고Bar) * r[j] * 저Bar + 저;
59 : }
60 : }
61 : #=========================================================#
62 : # 하락방향
63 : #=========================================================#
64 : Else
65 : {
66 : #---------------------------------------------------------#
67 : # 최고/최저점 계산
68 : #---------------------------------------------------------#
69 : if INT(DATE/100) == 시작년월 and
70 : 고 < HH then
71 : {
72 : 고 = HH;
73 : 고Bar = 0;
74 : }
75 :
76 : if INT(DATE/100) >= 시작년월 and
77 : (저 == 0 or 저 > LL) then
78 : {
79 : 저 = LL;
80 : 저Bar = 0;
81 : }
82 :
83 : #---------------------------------------------------------#
84 : # Fibonacci Fan 계산
85 : #---------------------------------------------------------#
86 : For j = 0 To 6
87 : {
88 : ff[j] = (저-고)/(고Bar-저Bar) * r[j] * 고Bar + 고;
89 : }
90 : }
91 :
92 : #==============================================================================#
93 : # 지표출력
94 : #==============================================================================#
95 : if 고 > 0 and 저 > 0 then
96 : {
97 : Plot1(ff[0], "0%",Iff(방향>=0,BLACK,LBLUE));
98 : Plot2(ff[1], "24%",Iff(방향>=0,BLUE,LGREEN));
99 : Plot3(ff[2], "38%",Iff(방향>=0,GREEN,LCYAN));
100 : Plot4(ff[3], "50%",Iff(방향>=0,CYAN,PINK));
101 : Plot5(ff[4], "62%",Iff(방향>=0,RED,LMAGENTA));
102 : Plot6(ff[5], "76%",Iff(방향>=0,MAGENTA,LYELLOW));
103 : Plot7(ff[6],"100%",Iff(방향>=0,GRAY,BWHITE));
104 : } 검증이 안되는데 수정부탁드립니다~~`
2017-05-23
244
글번호 109771
답변완료
함수로직 요청드립니다.
안녕하세요.
다른 수식과 함께 and 조건으로 참조데이터(data2, 기관 거래대금)가 양수 일때만 매수 하도록 하는 식은 어떻게 구현해야 할까요?
2017-05-22
99
글번호 109770