커뮤니티
문의?
2011-05-06 11:21:52
598
글번호 38332
라인 오브젝트의 생성은 아래와 같습니다.
oLine = new Line( x1, y1, z1, x2, y2, z2 )
위의 문장은 위치 (x1, y1, z2)에서 위치 (x2, y2, z2)로
이어지는 oLine이라는 선을 생성합니다.
If LastBarOnChart Then
oLine2 = new Line( D[60], T[60], C[60], D, T, C )
위의 문장은 현재 종가와 60번째 이전 봉의 종가를 연결하는 선을 생성합니다.
실제 상황에서 봉이 새롭게 갱신될 때마다, 라인이 갱신되는 것을 보실 수 있습니다.
라인 오브젝트는 new, delete로 생성, 소멸이 가능하며
oLine2.Color = 2, oLine2.Size = 3 등으로 속성을 변경할 수 있습니다.
또한 oLine2.SetEnd( D, T, C ) 등으로 라인의 위치를 재지정할 수 있습니다.
실제 매매전략의 활용예를 통해, 라인 오브젝트 컨트롤을 살펴보겠습니다.
//데일리 채널 전략
//처음 10개의 봉 동안 최고점, 최저점을 찾은 후
//채널 돌파 시 매수 또는 매도 진입
Input: Len1(10)
Object: oL1(Line), oL2(Line)
If Date >Date[1] Then
DayIndex = 0
vPos1 = BarIndex
Else
DayIndex += 1
End If
If DayIndex = Len1 Then
vPos2 = BarIndex - vPos1
vHigh = Highest( H, Len1 )
vLow = Lowest( L, Len1 )
oL1 = new Line(D[vPos2], T[vPos2], vHigh, D, T, vHigh)
oL2 = new Line(D[vPos2], T[vPos2], vLow, D, T, vLow)
oL1.Color = Red
oL1.Size = 2
oL2.Color = Blue
oL2.Size = 2
End IF
If DayIndex>= Len1 Then
oL1.SetEnd ( D, T, vHigh )
oL2.SetEnd ( D, T, vLow )
Buy next bar at vHigh stop
Sell next bar at vLow stop
End If
예스랭귀지로 바꿔주세요
답변 1
예스스탁 예스스탁 답변
2011-05-06 12:48:58
안녕하세요
예스스탁입니다.
if dayindex+1 == 10 Then{
var1 = dayhigh;
var2 = daylow;
}
if dayindex+1 >= 10 Then{
buy("b",AtStop,var1+PriceScale);
sell("s",AtStop,var2-PriceScale);
}
즐거운 하루되세요
> 파생맨 님이 쓴 글입니다.
> 제목 : 문의?
> 라인 오브젝트의 생성은 아래와 같습니다.
oLine = new Line( x1, y1, z1, x2, y2, z2 )
위의 문장은 위치 (x1, y1, z2)에서 위치 (x2, y2, z2)로
이어지는 oLine이라는 선을 생성합니다.
If LastBarOnChart Then
oLine2 = new Line( D[60], T[60], C[60], D, T, C )
위의 문장은 현재 종가와 60번째 이전 봉의 종가를 연결하는 선을 생성합니다.
실제 상황에서 봉이 새롭게 갱신될 때마다, 라인이 갱신되는 것을 보실 수 있습니다.
라인 오브젝트는 new, delete로 생성, 소멸이 가능하며
oLine2.Color = 2, oLine2.Size = 3 등으로 속성을 변경할 수 있습니다.
또한 oLine2.SetEnd( D, T, C ) 등으로 라인의 위치를 재지정할 수 있습니다.
실제 매매전략의 활용예를 통해, 라인 오브젝트 컨트롤을 살펴보겠습니다.
//데일리 채널 전략
//처음 10개의 봉 동안 최고점, 최저점을 찾은 후
//채널 돌파 시 매수 또는 매도 진입
Input: Len1(10)
Object: oL1(Line), oL2(Line)
If Date >Date[1] Then
DayIndex = 0
vPos1 = BarIndex
Else
DayIndex += 1
End If
If DayIndex = Len1 Then
vPos2 = BarIndex - vPos1
vHigh = Highest( H, Len1 )
vLow = Lowest( L, Len1 )
oL1 = new Line(D[vPos2], T[vPos2], vHigh, D, T, vHigh)
oL2 = new Line(D[vPos2], T[vPos2], vLow, D, T, vLow)
oL1.Color = Red
oL1.Size = 2
oL2.Color = Blue
oL2.Size = 2
End IF
If DayIndex>= Len1 Then
oL1.SetEnd ( D, T, vHigh )
oL2.SetEnd ( D, T, vLow )
Buy next bar at vHigh stop
Sell next bar at vLow stop
End If
예스랭귀지로 바꿔주세요
다음글
이전글