커뮤니티

수식문의드립니다.

프로필 이미지
추세신호
2018-10-01 07:17:49
124
글번호 122316
답변완료
아래의 수식에서 추가 조건을 넣어 합성수식을 만들고자 합니다. 추가수식은 MACD 0선 위 매수대응만. MACD 0선 아래 매도대응만. 정리하면 MACD 0선위 + 골드크로스 = 매수진입 MACD 0선 아래 + 데드크로수 = 매도진입 부탁드립니다. Input : LENGTH1(10), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: TEMA(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; TEMA = (3 * Ema(c,LENGTH1)) - (3 * Ema(Ema(c,LENGTH1),LENGTH1)) + (Ema(Ema(Ema(c,LENGTH1),LENGTH1),LENGTH1)); if Tcond == true and Xcond == false then { if crossup(c,TEMA) Then buy(); if CrossDown(c,TEMA) Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop);
시스템
답변 3
프로필 이미지

예스스탁 예스스탁 답변

2018-10-01 15:57:55

안녕하세요 예스스탁입니다. Input : short(12),long(26),sig(9), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: MACDV(0),MACDS(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; MACDV = MACD(short,long); MACDS = ema(MACDv,sig); if Tcond == true and Xcond == false then { if crossup(MACDV,MACDS) and MACDV > 0 Then buy(); if CrossDown(MACDV,MACDS) and MACDV < 0 Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop); 즐거운 하루되세요 > 추세신호 님이 쓴 글입니다. > 제목 : 수식문의드립니다. > 아래의 수식에서 추가 조건을 넣어 합성수식을 만들고자 합니다. 추가수식은 MACD 0선 위 매수대응만. MACD 0선 아래 매도대응만. 정리하면 MACD 0선위 + 골드크로스 = 매수진입 MACD 0선 아래 + 데드크로수 = 매도진입 부탁드립니다. Input : LENGTH1(10), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: TEMA(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; TEMA = (3 * Ema(c,LENGTH1)) - (3 * Ema(Ema(c,LENGTH1),LENGTH1)) + (Ema(Ema(Ema(c,LENGTH1),LENGTH1),LENGTH1)); if Tcond == true and Xcond == false then { if crossup(c,TEMA) Then buy(); if CrossDown(c,TEMA) Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop);
프로필 이미지

추세신호

2018-10-01 16:35:30

이평값넣는게 없어졌는데요 ㅜㅜ 넣어주셔요 인풋에 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식문의드립니다. > 안녕하세요 예스스탁입니다. Input : short(12),long(26),sig(9), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: MACDV(0),MACDS(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; MACDV = MACD(short,long); MACDS = ema(MACDv,sig); if Tcond == true and Xcond == false then { if crossup(MACDV,MACDS) and MACDV > 0 Then buy(); if CrossDown(MACDV,MACDS) and MACDV < 0 Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop); 즐거운 하루되세요 > 추세신호 님이 쓴 글입니다. > 제목 : 수식문의드립니다. > 아래의 수식에서 추가 조건을 넣어 합성수식을 만들고자 합니다. 추가수식은 MACD 0선 위 매수대응만. MACD 0선 아래 매도대응만. 정리하면 MACD 0선위 + 골드크로스 = 매수진입 MACD 0선 아래 + 데드크로수 = 매도진입 부탁드립니다. Input : LENGTH1(10), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: TEMA(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; TEMA = (3 * Ema(c,LENGTH1)) - (3 * Ema(Ema(c,LENGTH1),LENGTH1)) + (Ema(Ema(Ema(c,LENGTH1),LENGTH1),LENGTH1)); if Tcond == true and Xcond == false then { if crossup(c,TEMA) Then buy(); if CrossDown(c,TEMA) Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop);
프로필 이미지

예스스탁 예스스탁 답변

2018-10-01 16:45:33

안녕하세요 예스스탁입니다. MACD 골드/데드를 기준 TEMA골드데드로 변경했습니다. Input : LENGTH1(10),short(12),long(26),sig(9), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: TEMA(0),MACDV(0),MACDS(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; MACDV = MACD(short,long); MACDS = ema(MACDv,sig); TEMA = (3 * Ema(c,LENGTH1)) - (3 * Ema(Ema(c,LENGTH1),LENGTH1)) + (Ema(Ema(Ema(c,LENGTH1),LENGTH1),LENGTH1)); if Tcond == true and Xcond == false then { if crossup(c,TEMA) and MACDV > 0 Then buy(); if CrossDown(c,TEMA) and MACDV < 0 Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop); 즐거운 하루되세요 > 추세신호 님이 쓴 글입니다. > 제목 : Re : Re : 수식문의드립니다. > 이평값넣는게 없어졌는데요 ㅜㅜ 넣어주셔요 인풋에 > 예스스탁 님이 쓴 글입니다. > 제목 : Re : 수식문의드립니다. > 안녕하세요 예스스탁입니다. Input : short(12),long(26),sig(9), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: MACDV(0),MACDS(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; MACDV = MACD(short,long); MACDS = ema(MACDv,sig); if Tcond == true and Xcond == false then { if crossup(MACDV,MACDS) and MACDV > 0 Then buy(); if CrossDown(MACDV,MACDS) and MACDV < 0 Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop); 즐거운 하루되세요 > 추세신호 님이 쓴 글입니다. > 제목 : 수식문의드립니다. > 아래의 수식에서 추가 조건을 넣어 합성수식을 만들고자 합니다. 추가수식은 MACD 0선 위 매수대응만. MACD 0선 아래 매도대응만. 정리하면 MACD 0선위 + 골드크로스 = 매수진입 MACD 0선 아래 + 데드크로수 = 매도진입 부탁드립니다. Input : LENGTH1(10), 당일누적수익틱수(500),당일누적손실틱수(500); input : starttime(90000),endtime(050000); VARS: TEMA(0),Tcond(false); Var : N1(0),dayPl(0),당일누적수익(0),당일누적손실(0),Xcond(false); if (sdate != sdate[1] and stime >= endtime) or (sdate == sdate[1] and stime >= endtime and stime[1] < endtime) then { Tcond = false; if MarketPosition == 1 Then ExitLong("bx"); if MarketPosition == -1 Then ExitShort("sx"); } if (sdate != sdate[1] and stime >= starttime) or (sdate == sdate[1] and stime >= starttime and stime[1] < starttime) then { Xcond = false; N1 = NetProfit; Tcond = true; } 당일누적수익 = PriceScale*당일누적수익틱수; 당일누적손실 = PriceScale*당일누적손실틱수; daypl = NetProfit-N1; if TotalTrades > TotalTrades[1] and (IsExitName("dbp",1) == true or IsExitName("dbl",1) == true or IsExitName("dsp",1) == true or IsExitName("dsl",1) == true) then Xcond = true; TEMA = (3 * Ema(c,LENGTH1)) - (3 * Ema(Ema(c,LENGTH1),LENGTH1)) + (Ema(Ema(Ema(c,LENGTH1),LENGTH1),LENGTH1)); if Tcond == true and Xcond == false then { if crossup(c,TEMA) Then buy(); if CrossDown(c,TEMA) Then sell(); } if MarketPosition == 1 then{ ExitLong("dbp",atlimit,EntryPrice+((당일누적수익-daypl)/CurrentContracts)); ExitLong("dbl",AtStop,EntryPrice-((당일누적손실+daypl)/CurrentContracts)); } if MarketPosition == -1 then{ ExitShort("dsp",atlimit,EntryPrice-((당일누적수익-daypl)/CurrentContracts)); ExitShort("dsl",AtStop,EntryPrice+((당일누적손실+daypl)/CurrentContracts)); } SetStopProfittarget(PriceScale*5,PointStop);