커뮤니티
청산식 문의
2019-01-11 00:56:42
179
글번호 125147
수고하십니다.
청산식에서
100틱 수익 청산
20틱 손실 청산
당일종가 청산
을 수식으로 부탁드립니다.
아울러 60768번 문의글 재문의 한 질문도 답변 부탁드립니다.
수고하세요.
답변 1
예스스탁 예스스탁 답변
2019-01-11 11:49:11
안녕하세요
예스스탁입니다.
1
SetStopProfittarget(PriceScale*100,PointStop);
SetStopLoss(PriceScale*20,PointStop);
SetStopEndofday(152500);
당일청산은 시간을 지정하셔야 합니다.
만약 사용하는 종목의 새벽시간에 청산하시면 당일청산은 아래와 같이 작성하셔야 합니다.
if sdate != sdate[1] then
SetStopEndofday(152500);
if bdate != bdate[1] then
SetStopEndofday(0);
2
Inputs: Length(60);
var : ii(0);
Var : Counter(0), DownAmt(0), UpAmt(0), UpSum(0), DownSum(0), UpAvg(0), DownAvg(0),R1(0),R2(0);
var : sum1(0),sum2(0);
if bdate != bdate[1] or index == 0 Then
{
ii = 0;
UpAvg = 0;
DownAvg = 0;
sum1 = 0;
sum2 = 0;
}
var1 = iff(C-C[1]<0,C-C[1],0);
var2 = iff(C-C[1]<0,C-C[1],C[1]-C);
ii = ii +1;
If ii >= 1 and ii <= Length then
{
sum1 = sum1+var1;
sum2 = sum2+var2;
UpSum = 0;
DownSum = 0;
For Counter = 0 To ii - 1
{
UpAmt = C[Counter] - C[Counter+1];
If UpAmt >= 0 Then
DownAmt = 0;
Else
{
DownAmt = -UpAmt;
UpAmt = 0;
}
UpSum = UpSum + UpAmt;
DownSum = DownSum + DownAmt;
}
UpAvg = UpSum / Length;
DownAvg = DownSum / Length;
}
Else if ii >= 1 and ii > Length then
{
sum1 = AccumN(var1,Length);
sum2 = AccumN(var2,Length);
UpAmt = C[0] - C[1];
If UpAmt >= 0 Then
DownAmt = 0;
Else
{
DownAmt = -UpAmt;
UpAmt = 0;
}
UpAvg = (UpAvg[1] * (Length - 1) + UpAmt) / Length;
DownAvg = (DownAvg[1] * (Length - 1) + DownAmt) / Length;
}
If UpAvg + DownAvg <> 0 Then
R1 = 100 * UpAvg / (UpAvg + DownAvg);
Else
R1 = 0;
R2 = sum1/sum2*100;
plot1(R1);
plot2(R2);
즐거운 하루되세요
> 당일선물 님이 쓴 글입니다.
> 제목 : 청산식 문의
> 수고하십니다.
청산식에서
100틱 수익 청산
20틱 손실 청산
당일종가 청산
을 수식으로 부탁드립니다.
아울러 60768번 문의글 재문의 한 질문도 답변 부탁드립니다.
수고하세요.