커뮤니티
수정부탁드립니다
2013-06-18 00:03:19
234
글번호 64413
1.
var: n지표(0),cnt(0),count(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if date != date[1] Then{
n지표 = 0;
var3 = n지표[1];#전일 마지막봉 n지표값
}
If dayindex > 0 Then
{
If Close[0] > Close[1] Then
n지표= n지표[1] + Volume;
Else
If Close[0] < Close[1] Then
n지표= n지표[1] - Volume;
Else
n지표= n지표[1];
}
var1 = highest(n지표,dayindex+1);
var2 = Lowest(n지표,dayindex+1);
if dayindex > 0 and count == 0 and MarketPosition == 0 Then{
if C >= dayopen+PriceScale*1 and bids > asks Then
buy("b1");
if C <= dayopen-PriceScale*1 and bids < asks Then
Sell("s1");
}
if MarketPosition == 1 and (CrossDown(n지표,var3-500) or CrossDown(n지표,var1-5000)) Then
exitlong("bx1");
if MarketPosition == -1 and (crossup(n지표,var3+500) or crossup(n지표,var2+5000)) Then
ExitShort("sx1");
------------------------------------------------------------------------------
초차트입니다
1.
진입할때 n지표값을 기억하였다가 기억된 값에서 1500이상 떨어지면 매수청산인데
1500이상 떨어져도 포지션이 청산 될때도 있고 안될때도 있습니다
2. 위 식에서 잘못된 것이 있는지 확인부탁드리며
진입과 청산이 수식대로 되는지도 확인 부탁드립니다
답변 1
예스스탁 예스스탁 답변
2013-06-18 10:35:20
안녕하세요
예스스탁입니다.
if식상 var3은 전일 n지표의 마지막 값입니다.
전일 마지막값보다 500 떨어지거나 진입이후 n지표의 최고값보다 5000 떨어지면 매수청산
전일 마지막값보다 500 상승하거나 진입이후 n지표의 최저값보다 5000 상승하면 매도청산
으로 되어 있습니다.
진입할때를 기준으로 1500이상 하락하면 매수청산
진입할때를 기준으로 1500이상 상승하면 매도청산으로 수정했습니다.
청산을 나눠서 각기 다른이름이 표시되도록 했습니다.
var: n지표(0),cnt(0),count(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if date != date[1] Then{
n지표 = 0;
var3 = n지표[1];#전일 마지막봉 n지표값
}
If dayindex > 0 Then
{
If Close[0] > Close[1] Then
n지표= n지표[1] + Volume;
Else
If Close[0] < Close[1] Then
n지표= n지표[1] - Volume;
Else
n지표= n지표[1];
}
var1 = highest(n지표,dayindex+1);
var2 = Lowest(n지표,dayindex+1);
if dayindex > 0 and count == 0 and MarketPosition == 0 Then{
if C >= dayopen+PriceScale*1 and bids > asks Then
buy("b1");
if C <= dayopen-PriceScale*1 and bids < asks Then
Sell("s1");
}
if MarketPosition == 1 Then{
if CrossDown(n지표,n지표[BarsSinceEntry]-1500) then
ExitLong("bx1");
if CrossDown(n지표,var1-5000) Then
ExitLong("bx2");
}
if MarketPosition == -1 Then{
if crossup(n지표,n지표[BarsSinceEntry]+1500) then
ExitShort("sx1");
if crossup(n지표,var2+5000) Then
ExitShort("sx2");
}
즐거운 하루되세요
> 1231241 님이 쓴 글입니다.
> 제목 : 수정부탁드립니다
> 1.
var: n지표(0),cnt(0),count(0);
count = 0;
for cnt = 0 to 10{
if sdate == EntryDate(cnt) Then
count = count+1;
}
if date != date[1] Then{
n지표 = 0;
var3 = n지표[1];#전일 마지막봉 n지표값
}
If dayindex > 0 Then
{
If Close[0] > Close[1] Then
n지표= n지표[1] + Volume;
Else
If Close[0] < Close[1] Then
n지표= n지표[1] - Volume;
Else
n지표= n지표[1];
}
var1 = highest(n지표,dayindex+1);
var2 = Lowest(n지표,dayindex+1);
if dayindex > 0 and count == 0 and MarketPosition == 0 Then{
if C >= dayopen+PriceScale*1 and bids > asks Then
buy("b1");
if C <= dayopen-PriceScale*1 and bids < asks Then
Sell("s1");
}
if MarketPosition == 1 and (CrossDown(n지표,var3-500) or CrossDown(n지표,var1-5000)) Then
exitlong("bx1");
if MarketPosition == -1 and (crossup(n지표,var3+500) or crossup(n지표,var2+5000)) Then
ExitShort("sx1");
------------------------------------------------------------------------------
초차트입니다
1.
진입할때 n지표값을 기억하였다가 기억된 값에서 1500이상 떨어지면 매수청산인데
1500이상 떨어져도 포지션이 청산 될때도 있고 안될때도 있습니다
2. 위 식에서 잘못된 것이 있는지 확인부탁드리며
진입과 청산이 수식대로 되는지도 확인 부탁드립니다