커뮤니티

수식변경 부탁 드립니다.

프로필 이미지
dandy
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가지 수식 부탁드립니다.