커뮤니티

청산수식 수정부탁드립니다.

프로필 이미지
바둑이
2022-04-15 14:03:28
1336
글번호 158072
답변완료
안녕하세요. data3과4중 3이 우위, data5와6중 5가 우위, data7과8중 7이 우위가 동시에 모두 성립할 때 매수 진입 후 data3과4중 3이 우위, data5와6중 5가 우위, data7과8중 7이 우위가 하나라도 이탈 성립하면 청산 아래와 같이 작성했는데 청산이 제대로 되질 않습니다. 수정부탁드립니다. Input: dix(1),stopper(1.2); Var : EDT(0); setstoploss(stopper); var : T1(0),entry(0); if Bdate != bdate[1] Then T1 = TotalTrades[1]; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if dayindex >= dix and stime > 083000 then{ if (data3(C)-data4(c)> 0 and data5(C)-data6(c)> 0 and data7(C)-data8(c)> 0) or (crossup(data3(c),data4(c)) and crossup(data5(c),data6(c)) and crossup(data7(c),data8(c)))Then if entry < 10 Then buy(); if (data3(C)-data4(c)< 0 and data5(C)-data6(c)< 0 and data7(C)-data8(c)< 0) or (CrossDown(data3(c),data4(c)) and CrossDown(data5(c),data6(c))and CrossDown(data7(c),data8(c)))Then if entry < 10 Then sell(); } if MarketPosition == 1 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; IF CrossDown(data3(c),data4(c)) OR CrossDown(data5(c),data6(c))OR CrossDown(data7(c),data8(c))Then ExitLong(); if MarketPosition == -1 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; IF crossup(data3(c),data4(c)) OR crossup(data5(c),data6(c)) OR crossup(data7(c),data8(c))Then ExitShort();
시스템
답변 1
프로필 이미지

예스스탁 예스스탁 답변

2022-04-15 15:30:49

안녕하세요 예스스탁입니다. Input: dix(1),stopper(1.2),진입횟수(10); var : entry(0,Data1),idx(0,Data1); var : Bcond(False,Data1),Scond(False,Data1); setstoploss(stopper); if Bdate != bdate[1] Then { entry = 0; idx = 0; } Else idx = idx+1; if (MarketPosition != 0 and MarketPosition != MarketPosition[1]) or (MarketPosition == MarketPosition[1] and TotalTrades > TotalTrades[1]) Then entry = entry+1; bcond = data3(C)-data4(c) > 0 and data5(C)-data6(c) > 0 and data7(C)-data8(c) > 0; scond = data3(C)-data4(c) < 0 and data5(C)-data6(c) < 0 and data7(C)-data8(c) < 0; if idx >= dix and stime > 083000 then { if entry < 진입횟수 and Bcond == true Then buy(); if entry < 진입횟수 and Scond == true Then { sell(); } } IF MarketPosition ==1 and Bcond == False Then ExitLong(); IF MarketPosition == -1 and Scond == False Then ExitShort(); 즐거운 하루되세요 > 바둑이 님이 쓴 글입니다. > 제목 : 청산수식 수정부탁드립니다. > 안녕하세요. data3과4중 3이 우위, data5와6중 5가 우위, data7과8중 7이 우위가 동시에 모두 성립할 때 매수 진입 후 data3과4중 3이 우위, data5와6중 5가 우위, data7과8중 7이 우위가 하나라도 이탈 성립하면 청산 아래와 같이 작성했는데 청산이 제대로 되질 않습니다. 수정부탁드립니다. Input: dix(1),stopper(1.2); Var : EDT(0); setstoploss(stopper); var : T1(0),entry(0); if Bdate != bdate[1] Then T1 = TotalTrades[1]; if MarketPosition == 0 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; if dayindex >= dix and stime > 083000 then{ if (data3(C)-data4(c)> 0 and data5(C)-data6(c)> 0 and data7(C)-data8(c)> 0) or (crossup(data3(c),data4(c)) and crossup(data5(c),data6(c)) and crossup(data7(c),data8(c)))Then if entry < 10 Then buy(); if (data3(C)-data4(c)< 0 and data5(C)-data6(c)< 0 and data7(C)-data8(c)< 0) or (CrossDown(data3(c),data4(c)) and CrossDown(data5(c),data6(c))and CrossDown(data7(c),data8(c)))Then if entry < 10 Then sell(); } if MarketPosition == 1 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; IF CrossDown(data3(c),data4(c)) OR CrossDown(data5(c),data6(c))OR CrossDown(data7(c),data8(c))Then ExitLong(); if MarketPosition == -1 Then entry = TotalTrades-T1; Else entry = TotalTrades-T1+1; IF crossup(data3(c),data4(c)) OR crossup(data5(c),data6(c)) OR crossup(data7(c),data8(c))Then ExitShort();