커뮤니티

부탁드립니다

프로필 이미지
1231241
2013-06-03 18:58:26
244
글번호 63942
답변완료
input : P1(5),P2(20),T(5),ProfitTick(100),DropPercent(50); var : cnt(0),count(0); var1 = ma(c,P1); var2 = ma(c,P2); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if count == 0 Then{ if C >= dayopen+PriceScale*T or bids > asks Then buy(); if C <= dayopen-PriceScale*T or bids < asks Then Sell(); } if count == 1 Then{ if MarketPosition == 0 and IsExitName("bx",1) == true and C >= dayopen+PriceScale*T Then buy(); if MarketPosition == 0 and IsExitName("sx",1) == true and C <= dayopen-PriceScale*T Then Sell(); } if MarketPosition == 1 Then{ value1 = Highest(H,BarsSinceEntry); if CrossDown(var1,var2) Then ExitLong(); if value1 >= EntryPrice+PriceScale*ProfitTick Then ExitLong("BuyTr",AtStop,value1-(value1-EntryPrice)*(DropPercent/100)); } if MarketPosition == -1 Then{ value2 = lowest(L,BarsSinceEntry); if CrossUp(var1,var2) Then ExitShort(); if value2 <= EntryPrice-PriceScale*ProfitTick Then ExitShort("SellTr",AtStop,value2+(EntryPrice-value2)*(DropPercent/100)); } 시스템식을 혼자 짜맞추다보니 진입시점이나 진입횟수이나 이상합니다 수정부탁드릴께요 1. N틱 상승 하락과 상관없이 첫봉에 진입이 되니 수정부탁드립니다 2. 당일 매수한번 매도한번 으로 진입횟수를 제한 3. 당일 매수매도 상관없이 하루진입 2번으로 제한
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2013-06-03 19:18:10

안녕하세요 예스스탁입니다. 당일 첫진입이 시가대비 T틱 상승이거나 매수잔량이 매도잔량보다 많으면 매수진입 시가대비 T틱 하락이거나 매수잔량이 매도잔량보다 작으면 매도진입 입니다. or로 연결이 되어 있어 2개조건 중 하나만 만족해도 진입합니다. and로 연결했습니다, 1. 당일 매수 한번, 매도 한번 당일 매수와 매도를 각 한번씩 하는 식에서는 if count == 1 Then{ if MarketPosition == 0 and IsExitName("bx",1) == true and C >= dayopen+PriceScale*T Then buy(); if MarketPosition == 0 and IsExitName("sx",1) == true and C <= dayopen-PriceScale*T Then Sell(); } 위 내용이 의미가 없습니다. 위식은 재매수, 재매도 식입니다. 위 내용 제외하고 아래와 같이 작성하시면 됩니다. input : P1(5),P2(20),T(5),ProfitTick(100),DropPercent(50); var : cnt(0),count(0),bcount(0),scount(0); var1 = ma(c,P1); var2 = ma(c,P2); count = 0; Bcount = 0; Scount = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; if sdate == EntryDate(cnt) and MarketPosition(cnt) == 1 Then bcount = bcount+1; if sdate == EntryDate(cnt) and MarketPosition(cnt) == -1 Then scount = scount+1; } if Bcount < 1 and C >= dayopen+PriceScale*T and bids > asks Then buy(); if Scount < 1 and C <= dayopen-PriceScale*T and bids < asks Then Sell(); if MarketPosition == 1 Then{ value1 = Highest(H,BarsSinceEntry); if CrossDown(var1,var2) Then ExitLong(); if value1 >= EntryPrice+PriceScale*ProfitTick Then ExitLong("BuyTr",AtStop,value1-(value1-EntryPrice)*(DropPercent/100)); } if MarketPosition == -1 Then{ value2 = lowest(L,BarsSinceEntry); if CrossUp(var1,var2) Then ExitShort(); if value2 <= EntryPrice-PriceScale*ProfitTick Then ExitShort("SellTr",AtStop,value2+(EntryPrice-value2)*(DropPercent/100)); } 2,매수매도 상관없이 당일 2번 진입 input : P1(5),P2(20),T(5),ProfitTick(100),DropPercent(50); var : cnt(0),count(0),bcount(0),scount(0); var1 = ma(c,P1); var2 = ma(c,P2); count = 0; Bcount = 0; Scount = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; if sdate == EntryDate(cnt) and MarketPosition(cnt) == 1 Then bcount = bcount+1; if sdate == EntryDate(cnt) and MarketPosition(cnt) == -1 Then scount = scount+1; } if count == 0 Then{ if C >= dayopen+PriceScale*T and bids > asks Then buy(); if C <= dayopen-PriceScale*T and bids < asks Then Sell(); } if count == 1 Then{ if MarketPosition == 0 and IsExitName("bx",1) == true and C >= dayopen+PriceScale*T Then buy(); if MarketPosition == 0 and IsExitName("sx",1) == true and C <= dayopen-PriceScale*T Then Sell(); } if MarketPosition == 1 Then{ value1 = Highest(H,BarsSinceEntry); if CrossDown(var1,var2) Then ExitLong(); if value1 >= EntryPrice+PriceScale*ProfitTick Then ExitLong("BuyTr",AtStop,value1-(value1-EntryPrice)*(DropPercent/100)); } if MarketPosition == -1 Then{ value2 = lowest(L,BarsSinceEntry); if CrossUp(var1,var2) Then ExitShort(); if value2 <= EntryPrice-PriceScale*ProfitTick Then ExitShort("SellTr",AtStop,value2+(EntryPrice-value2)*(DropPercent/100)); } 즐거운 하루되세요 > 1231241 님이 쓴 글입니다. > 제목 : 부탁드립니다 > input : P1(5),P2(20),T(5),ProfitTick(100),DropPercent(50); var : cnt(0),count(0); var1 = ma(c,P1); var2 = ma(c,P2); count = 0; for cnt = 0 to 20{ if sdate == EntryDate(cnt) Then count = count+1; } if count == 0 Then{ if C >= dayopen+PriceScale*T or bids > asks Then buy(); if C <= dayopen-PriceScale*T or bids < asks Then Sell(); } if count == 1 Then{ if MarketPosition == 0 and IsExitName("bx",1) == true and C >= dayopen+PriceScale*T Then buy(); if MarketPosition == 0 and IsExitName("sx",1) == true and C <= dayopen-PriceScale*T Then Sell(); } if MarketPosition == 1 Then{ value1 = Highest(H,BarsSinceEntry); if CrossDown(var1,var2) Then ExitLong(); if value1 >= EntryPrice+PriceScale*ProfitTick Then ExitLong("BuyTr",AtStop,value1-(value1-EntryPrice)*(DropPercent/100)); } if MarketPosition == -1 Then{ value2 = lowest(L,BarsSinceEntry); if CrossUp(var1,var2) Then ExitShort(); if value2 <= EntryPrice-PriceScale*ProfitTick Then ExitShort("SellTr",AtStop,value2+(EntryPrice-value2)*(DropPercent/100)); } 시스템식을 혼자 짜맞추다보니 진입시점이나 진입횟수이나 이상합니다 수정부탁드릴께요 1. N틱 상승 하락과 상관없이 첫봉에 진입이 되니 수정부탁드립니다 2. 당일 매수한번 매도한번 으로 진입횟수를 제한 3. 당일 매수매도 상관없이 하루진입 2번으로 제한