커뮤니티
수식변경 부탁 드립니다.
2015-03-03 17:49:56
184
글번호 83663
키움수식 지표변수 -> 예스수식 지표변수로 변환요청 드립니다.
지표변수1
MA1 -> (1)
MA2 -> (2)
short -> (3)
short1 -> (4)
mid -> (5)
mid1 -> (6)
long -> (7)
shortPeriod -> (8)
longPeriod -> (9)
baseLine -> (10)
Period -> (11)
Percent -> (12)
키움수식1
매수진입
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
매수청산
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short1) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
b=CrossDown(avg(c,MA1),eavg(c,MA2));
f=CrossDown(C+2.3,EnvelopeDown(Period,Percent));
if(time >= 100000 && time <= 132500,f or b,a)
매도진입
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
f=CrossDown(C+2.3,EnvelopeDown(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
매도청산
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
b=CrossUp(avg(c,MA1),eavg(c,MA2));
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f or b,a)
부탁드립니다.
----------------------------------------------------------------------------------------
지표변수2
MA1 -> (1)
MA2 -> (2)
short -> (3)
short1 -> (4)
mid -> (5)
mid1 -> (6)
long -> (7)
shortPeriod -> (8)
longPeriod -> (9)
baseLine -> (10)
Period -> (11)
Percent -> (12)
키움수식2
매수진입
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
매수청산
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
f=CrossDown(C+2.3,EnvelopeDown(Period,1.3));
if(time >= 100000 && time <= 132500,f,a)
매도진입
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
f=CrossDown(C+2.3,EnvelopeDown(Period,1.3));
if(time >= 100000 && time <= 132500,f,a)
매도청산
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
부탁드립니다.
--------------------------------------------------------------------------------------
지난번 요청건 중 오류 누락 건 입니다.
지표변수3
short -> (1)
long -> (2)
signal -> (2)
키움수식3
a=CrossDown(eavg(MACD(short,long)),signal);
a=CrossUp(eavg(MACD(short,long)),signal);
부탁드립니다.
--------------------------------------------------------------------------------------
3가지 수식 부탁드립니다.
답변 1
예스스탁 예스스탁 답변
2015-03-04 10:33:53
안녕하세요
예스스탁입니다.
1.
input : MA1(1),MA2(2),short(3),short1(4),mid(5),mid1(6),long(7),shortPeriod(8),longPeriod(9),baseLine(10),Period(11),Percent(12);
var : buyA(false),buyF(false);
var : BxA(false),BxB(false),Bxf(false);
var : SellA(false),Sellf(false);
var : SxA(false),SxB(false),Sxf(false);
buyA=CrossUp(ma(c,MA1),ema(c,MA2)) and C > ma(C,short) && ma(C, short1) > ma(C,mid)
&& ma(C,mid1) > ema(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
buyF=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if iff(stime >= 100000 && stime <= 132500,BuyF,BuyA) Then
buy();
BxA=CrossDown(ma(c,MA1),ema(c,MA2)) and C < ma(C,short) && ma(C, short1) < ma(C,mid)
&& ma(C,mid1) < ema(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
BxB=CrossDown(ma(c,MA1),ema(c,MA2));
BxF=CrossDown(C+2.3,EnvelopeDown(Period,Percent));
if iff(stime >= 100000 && stime <= 132500,BxF or BxB,BxA) Then
exitlong();
SellA=CrossDown(ma(c,MA1),ema(c,MA2)) and C < ma(C,short) && ma(C, short) < ma(C,mid)
&& ma(C,mid1) < ema(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
Sellf=CrossDown(C+2.3,EnvelopeDown(Period,Percent));
if iff(stime >= 100000 && stime <= 132500,SellF,SellA) Then
sell();
SxA=CrossUp(ma(c,MA1),ema(c,MA2)) and C > ma(C,short) && ma(C, short1) > ma(C,mid)
&& ma(C,mid1) > ema(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
SxB=CrossUp(ma(c,MA1),ema(c,MA2));
SxF=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if iff(stime >= 100000 && stime <= 132500,SxF or SxB,SxA) then
ExitShort();
2.
input : MA1(1),MA2(2),short(3),short1(4),mid(5),mid1(6),long(7),shortPeriod(8),longPeriod(9),baseLine(10),Period(11),Percent(12);
var : buyA(false),buyF(false);
var : BxA(false),BxB(false),Bxf(false);
var : SellA(false),Sellf(false);
var : SxA(false),SxB(false),Sxf(false);
Buya=CrossUp(ma(c,MA1),ema(c,MA2)) and C > ma(C,short) && ma(C, short1) > ma(C,mid)
&& ma(C,mid1) > ema(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
Buyf=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if iff(stime >= 100000 && stime <= 132500,Buyf,Buya) Then
buy();
Bxa=CrossDown(ma(c,MA1),ema(c,MA2)) and C < ma(C,short) && ma(C, short) < ma(C,mid)
&& ma(C,mid1) < ema(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
Bxf=CrossDown(C+2.3,EnvelopeDown(Period,1.3));
if iff(stime >= 100000 && stime <= 132500,Bxf,Bxa) Then
ExitLong();
Sella=CrossDown(ma(c,MA1),ema(c,MA2)) and C < ma(C,short) && ma(C, short) < ma(C,mid)
&& ma(C,mid1) < ema(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
Sellf=CrossDown(C+2.3,EnvelopeDown(Period,1.3));
if iff(stime >= 100000 && stime <= 132500,Sellf,Sella) Then
sell();
Sxa=CrossUp(ma(c,MA1),ema(c,MA2)) and C > ma(C,short) && ma(C, short1) > ma(C,mid)
&& ma(C,mid1) > ema(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
Sxf=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if iff(stime >= 100000 && stime <= 132500,Sxf,Sxa) Then
ExitShort();
3.
3번 식은 내용에 누락이 있으신것 같습니다
상향돌파/하향이탈을 하는데 값이 2개가 비교가 되어야 하는데
값이 1개만 있어 내용이 판단되지 않습니다.
eavg(MACD(short,long))와 같은 부분도 지수이평의 기간이 빠져 있습니다.
해당 내용은 아래 내용 참고하셔서 직접 수정해 사용하시기 바랍니다.
input : short(1),long(2),signal(2);
if CrossDown(MACD(short,long),ema(MACD(short,long),signal)) Then
sell();
if CrossUp(MACD(short,long),ema(MACD(short,long),signal)) Then
buy();
즐거운 하루되세요
> dandy 님이 쓴 글입니다.
> 제목 : 수식변경 부탁 드립니다.
> 키움수식 지표변수 -> 예스수식 지표변수로 변환요청 드립니다.
지표변수1
MA1 -> (1)
MA2 -> (2)
short -> (3)
short1 -> (4)
mid -> (5)
mid1 -> (6)
long -> (7)
shortPeriod -> (8)
longPeriod -> (9)
baseLine -> (10)
Period -> (11)
Percent -> (12)
키움수식1
매수진입
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
매수청산
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short1) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
b=CrossDown(avg(c,MA1),eavg(c,MA2));
f=CrossDown(C+2.3,EnvelopeDown(Period,Percent));
if(time >= 100000 && time <= 132500,f or b,a)
매도진입
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
f=CrossDown(C+2.3,EnvelopeDown(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
매도청산
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
b=CrossUp(avg(c,MA1),eavg(c,MA2));
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f or b,a)
부탁드립니다.
----------------------------------------------------------------------------------------
지표변수2
MA1 -> (1)
MA2 -> (2)
short -> (3)
short1 -> (4)
mid -> (5)
mid1 -> (6)
long -> (7)
shortPeriod -> (8)
longPeriod -> (9)
baseLine -> (10)
Period -> (11)
Percent -> (12)
키움수식2
매수진입
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
매수청산
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
f=CrossDown(C+2.3,EnvelopeDown(Period,1.3));
if(time >= 100000 && time <= 132500,f,a)
매도진입
a=CrossDown(avg(c,MA1),eavg(c,MA2)) and C < avg(C,short) && avg(C, short) < avg(C,mid)
&& avg(C,mid1) < eavg(C,long) or CrossDown(MACD(shortPeriod,longPeriod),baseLine);
f=CrossDown(C+2.3,EnvelopeDown(Period,1.3));
if(time >= 100000 && time <= 132500,f,a)
매도청산
a=CrossUp(avg(c,MA1),eavg(c,MA2)) and C > avg(C,short) && avg(C, short1) > avg(C,mid)
&& avg(C,mid1) > eavg(C,long) or CrossUp(MACD(shortPeriod,longPeriod),baseLine);
f=CrossUp(C-2.3,EnvelopeUp(Period,Percent));
if(time >= 100000 && time <= 132500,f,a)
부탁드립니다.
--------------------------------------------------------------------------------------
지난번 요청건 중 오류 누락 건 입니다.
지표변수3
short -> (1)
long -> (2)
signal -> (2)
키움수식3
a=CrossDown(eavg(MACD(short,long)),signal);
a=CrossUp(eavg(MACD(short,long)),signal);
부탁드립니다.
--------------------------------------------------------------------------------------
3가지 수식 부탁드립니다.