예스스탁
예스스탁 답변
2020-07-30 15:23:58
안녕하세요
예스스탁입니다.
input : dnLOSS(1.30),dnLimit(99999), dnTRAIL1(3.40),최소수익2(10.00),dnTRAIL2(0.50),최소가격변화포인트(0.30), 봉갯수(40);
input : dnHLtime(190000),dnbar2(19),dnHLrange(19);
input : dn단기1(300),dn장기1(400);
Input : dnPeriod1(700),dnPeriod2(200);
input : exshortbar(50);
input : dn연속봉1(2),dn연속small1(1.6),dn연속large1(1.8);
input : 양봉(0.20),음봉(0.60),도지(0.60),합(1.00);
SetStopLoss(dnLOSS,PointStop);
SetStopProfittarget(dnLimit,PointStop);
ExitShort("트레일링",AtStop,Lowest(l,BarsSinceEntry)+dnTRAIL1);
SetStopTrailing(dnTRAIL2,최소수익2,PointStop);
SetStopInactivity(최소가격변화포인트,봉갯수,PointStop);
var : hh(0,Data3),ll(0,Data3),ii(0,Data3);
if Data2(bdate != bdate[1]) Then
{
hh = 0;
ll = 0;
ii = 0;
}
if Data2(stime >= dnHLtime) then
{
ii = ii +1;
if hh == 0 or (hh > 0 and Data3(h) > hh) Then
hh = Data3(h);
if ll == 0 or (ll > 0 and Data3(l) < ll) Then
ll = Data3(l);
if ii >= dnbar2 and hh-ll < dnHLrange Then
ExitShort("time최소변화");
}
var : ma1(0,Data3), ma2(0,Data3);
ma1 = Data3(ma(C,dn단기1));
ma2 = Data3(ma(C,dn장기1));
if CrossUp(ma1, ma2) then
ExitShort("이평12");
Var : 매수이평(0,Data3), 매도이평(0,Data3);
매수이평 = data3(ma(bids, dnperiod1));
매도이평 = data3(ma(asks, dnperiod2));
if crossup(매수이평, 매도이평) then
exitshort("호가이평1");
var : v1(0,Data3),v2(0,Data3),v5(0,Data3),v6(0,Data3);
v1 = Data3(max(C,O));
v2 = Data3(min(C,O));
v5 = Data3(Lowest(v1,exshortbar));
v6 = Data3(highest(v2,exshortbar));
if var5[1] >= var6[1] Then
Exitshort("s수평");
if Data3(accumN(iff(C>O,1,0),dn연속봉1) == dn연속봉1) and
ExitDate(1) != sdate and
Data3(AccumN(abs(C-O), dn연속봉1) >= dn연속small1) and
Data3(AccumN(abs(C-O), dn연속봉1) < dn연속large1) then
ExitShort("s연속봉1");
var : sum(0,Data3);
if MarketPosition == -1 Then
{
if Data3(C > O) Then
sum = sum - 양봉;
Else if Data3(C < O) Then
sum = sum + 음봉;
Else
sum = sum -도지;
if sum <= -합 Then
Exitshort("도지");
}
Else
sum = 0;
즐거운 하루되세요
> 좌오비우오비 님이 쓴 글입니다.
> 제목 : 문의
> 아래 청산수식을 보조data3 에 사용할 수 있도록 요청드립니다.
**************************************************************************
input : dnLOSS(1.30),dnLimit(99999), dnTRAIL1(3.40),최소수익2(10.00),dnTRAIL2(0.50),최소가격변화포인트(0.30), 봉갯수(40);
input : dnHLtime(190000),dnbar2(19),dnHLrange(19);
input : dn단기1(300),dn장기1(400);
Input : dnPeriod1(700),dnPeriod2(200);
input : exshortbar(50);
input : dn연속봉1(2),dn연속small1(1.6),dn연속large1(1.8);
input : 양봉(0.20),음봉(0.60),도지(0.60),합(1.00);
SetStopLoss(dnLOSS,PointStop);
SetStopProfittarget(dnLimit,PointStop);
ExitShort("트레일링",AtStop,Lowest(l,BarsSinceEntry)+dnTRAIL1);
SetStopTrailing(dnTRAIL2,최소수익2,PointStop);
SetStopInactivity(최소가격변화포인트,봉갯수,PointStop);
var : hh(0),ll(0),ii(0);
if bdate != bdate[1] Then
{
hh = 0;
ll = 0;
ii = 0;
}
if stime >= dnHLtime then
{
ii = ii +1;
if hh == 0 or (hh > 0 and h > hh) Then
hh = h;
if ll == 0 or (ll > 0 and l < ll) Then
ll = l;
if ii >= dnbar2 and hh-ll < dnHLrange Then
ExitShort("time최소변화");
}
var : ma1(0), ma2(0);
ma1 = ma(C,dn단기1);
ma2 = ma(C,dn장기1);
if CrossUp(ma1, ma2) then
ExitShort("이평12");
Var : 매수이평(0), 매도이평(0);
매수이평 = ma(bids, dnperiod1);
매도이평 = ma(asks, dnperiod2);
if crossup(매수이평, 매도이평) then
exitshort("호가이평1");
var1 = max(C,O);
var2 = min(C,O);
var5 = Lowest(var1,exshortbar);
var6 = highest(var2,exshortbar);
if var5[1] >= var6[1] Then
Exitshort("s수평");
if accumN(iff(C>O,1,0),dn연속봉1) == dn연속봉1 and ExitDate(1) != sdate and AccumN(abs(C-O), dn연속봉1) >= dn연속small1 and AccumN(abs(C-O), dn연속봉1) < dn연속large1 then
ExitShort("s연속봉1");
var : sum(0);
if MarketPosition == -1 Then
{
if C > O Then
sum = sum - 양봉;
Else if C < O Then
sum = sum + 음봉;
Else
sum = sum -도지;
if sum <= -합 Then
Exitshort("도지");
}
Else
sum = 0;