Professional Documents
Culture Documents
SIDEBP
SIDEBP
2:3 (91-93): SIDEBAR: Programming Conventions for BASIC Technical Analysis subroutines:
NEXT
1135 FOR I = E TO B STEP - 1:
ON X(N,I) < > 0 GOTO 1145:
LET E = E - 1:
NEXT
1145 LET G = N:
LET T = LOG (X(G,B)):
LET U = T:
LET R = T:
LET Z = T:
REM SEED INITIAL ITERATION VARABLE S
1150 LET P$ = "1:ALPHA 2:FILTER 3:CUTOF F FREQ :" :
GOSUB 1165
1151 IF N = 1 THEN
LET P$ = ALPHA SMOOTHING CONS
TANT (0 TO 1) : " :
GOSUB 1165:
LET K = N:
GOTO 1160
1152 IF N = 2 THEN
LET P$ = " FILTER LENGTH IN DAYS : " :
GOSUB 1165:
GOTO 1155
1153 IF N = 3 THEN
LET P$ = CUTOFF FREQUENCY IN CYCLES/YEAR : " :
GOSUB 1165:
LET C = (1 - COS (N * 0.024166)) / 0.25992:
LET K = C * ( SQR (1 + 2 / C)- 1 ) :
GOTO 1160
1154 GOTO 1150:
REM BAD N VALUE
1155 LET K = 2 / (N + 1):
REM K = ALPHA APPROXIMATION ALGORITHM
1160 FOR I = B TO E:
LET R = ( LOG (X(G,I)) - R) *
K + R:
LET T = (R - T) * K + T:
LET U = (T - U) * K + U:
LET X(7,I) = (U - Z) * Y:
LET Z = U:
NEXT :
RETURN
1165 VTAB 2:
HTAB 1:
PRINT P$;:
INPUT " " ;N:
RETURN
PROGRAM LENGTH: 16 LINES / 1035 BYTES