커뮤니티
수식부탁드립니다.
2007-12-20 01:30:35
935
글번호 14193
수고하십니다.
아래의 사용자함수 BW에 갭보정을 적용하고 싶습니다.
혼자 하다보니 잘 안 되네요..
부탁드립니다.
=================
Input : maPeriod(Numeric), ROCPeriod(Numeric), stoPeriod1(Numeric), stoPeriod2(Numeric);
Var : value(0), value_EMA12(0), value_EMA26(0), value_Lowest(0);
value_EMA12 = ema(C, 12);
value_EMA26 = ema(C, 26);
If value_EMA12 - value_EMA26 > ema(value_EMA12 - value_EMA26, 9) Then
value = 1;
Else
value = -1;
If C > ma(C, maPeriod) Then
value = value + 1;
Else
value = value - 1;
If (C - C[ROCPeriod]) / C[ROCPeriod] * 100 > 0 Then
value = value + 1;
Else
value = value - 1;
value_Lowest = lowest(L, stoPeriod1);
If ema((C - value_Lowest) / (highest(H, stoPeriod1) - value_Lowest) * 100, stoPeriod2) > 50 Then
value = value + 1;
Else
value = value - 1;
BW = value;
답변 1
예스스탁 예스스탁 답변
2007-12-20 10:49:42
안녕하세요? 예스스탁 입니다.
갭보정한 사용자함수식 답변드립니다.
감사합니다.
Input : maPeriod(Numeric), ROCPeriod(Numeric), stoPeriod1(Numeric), stoPeriod2(Numeric);
Var : value(0), value_EMA12(0), value_EMA26(0), value_Lowest(0);
var : sumGap(0), gap(0), GO(0), GH(0), GL(0), GC(0);
if date!=date[1] then { // 날짜가 변경되는 봉에서(분봉에서 첫번째 봉)
gap = Open-Close[1]; // 시가에서 전일종가를 차감한 일간갭을 저장
sumGap = sumGap+gap; // 당일의 일간갭과 과거의 일간갭 누적치를 더하여 저장
}
GO = O - sumGap;// 갭보정 시가
GH = H - sumGap;// 갭보정 고가
GL = L - sumGap;// 갭보정 저가
GC = C - sumGap; // 갭보정 종가
value_EMA12 = ema(GC, 12);
value_EMA26 = ema(GC, 26);
If value_EMA12 - value_EMA26 > ema(value_EMA12 - value_EMA26, 9) Then
value = 1;
Else
value = -1;
If C > ma(GC, maPeriod) Then
value = value + 1;
Else
value = value - 1;
If (GC - GC[ROCPeriod]) / GC[ROCPeriod] * 100 > 0 Then
value = value + 1;
Else
value = value - 1;
value_Lowest = lowest(GL, stoPeriod1);
If ema((GC - value_Lowest) / (highest(GH, stoPeriod1) - value_Lowest) * 100, stoPeriod2) > 50 Then
value = value + 1;
Else
value = value - 1;
BW1 = value;
> 하하 님이 쓴 글입니다.
> 제목 : 수식부탁드립니다.
> 수고하십니다.
아래의 사용자함수 BW에 갭보정을 적용하고 싶습니다.
혼자 하다보니 잘 안 되네요..
부탁드립니다.
=================
Input : maPeriod(Numeric), ROCPeriod(Numeric), stoPeriod1(Numeric), stoPeriod2(Numeric);
Var : value(0), value_EMA12(0), value_EMA26(0), value_Lowest(0);
value_EMA12 = ema(C, 12);
value_EMA26 = ema(C, 26);
If value_EMA12 - value_EMA26 > ema(value_EMA12 - value_EMA26, 9) Then
value = 1;
Else
value = -1;
If C > ma(C, maPeriod) Then
value = value + 1;
Else
value = value - 1;
If (C - C[ROCPeriod]) / C[ROCPeriod] * 100 > 0 Then
value = value + 1;
Else
value = value - 1;
value_Lowest = lowest(L, stoPeriod1);
If ema((C - value_Lowest) / (highest(H, stoPeriod1) - value_Lowest) * 100, stoPeriod2) > 50 Then
value = value + 1;
Else
value = value - 1;
BW = value;
다음글
이전글