All of your Fortran code to access ISSM will follow the same design:
Below is a very simple example of pulling two firms from the 84 data files:
IMPLICIT NONE
C Bring in the common block variables
include 'issm.h'
C ----------------------------------------------------
C Process the first firm
C ----------------------------------------------------
call getsym('API.A',84)
write(*,*)symbol,cusip,nq
write(*,*) (trdqt(i), i=1,n)
C Process the second firm
C ----------------------------------------------------
call getsym('API.A2',84)
write(*,*)symbol,cusip,nq
write(*,*) (trdqt(i), i=1,n)
stop
end
C Bring in the getsym subroutine
C ----------------------------------------------------
include 'getsym.h'
To loop through all the firms for a particular year you can use the files /databases/issm1/general/filesxx (where xx = 83 to 92) to pull
the entire set of ticker symbols for the year xx. The program below is a very simple example of looping through the entire list of
tickers for 1991.
IMPLICIT NONE
integer i
character*12 xymbol
include 'issm.h'
C
C ***************************************
open(80,file='/databases/issm1/general/files91',
*form='formatted',status='old')
open(81,file='91info.txt',status='unknown')
1 continue
C Read the Ticker File --------------------------------
read(80,10,end=99)xymbol
10 format(a12)
C ------------------------------------------------------
C Use the getsym subroutine to fetch the information----
call getsym(xymbol,91)
C ------------------------------------------------------
C Do the operations on the firm which was fetched ------
write(81,1020)symbol,cusip,name,sic
1020 format(a12,2x,a8,2x,a30,2x,a4)
C ------------------------------------------------------
C Loop through the entire input file
goto 1
C ------------------------------------------------------
99 close(81)
close(80)
stop
end
C Include the getsym subroutine
include 'getsym.h'
C ------------------------------------------------------
Questions regarding which firms are available for which years can be answered by looking at the firm information files contained in the same list which directed you here. Information concerning variable definitions is contained in the ISSM documentation which I have placed on reserve in the JGSM library.