Announcement

Collapse
No announcement yet.

Display top 3 Market Makers (Axes) for NASDAQ Stocks

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Display top 3 Market Makers (Axes) for NASDAQ Stocks

    Hey all,

    Created a little script for myself and figured I'd share as it uses data from NASDAQTrader.com which is most likely under copyright so selling wouldn't be worth my while. Plus it's pretty simple.

    All it does, using data from July 2006 (currently) is display the top 3 market makers, based upon volume. The attached screenshot should show how it works.

    Steps:
    1) Place the .efs script wherever you want within formulas folder of eSignal.

    2) Extract all of the data from the zip file into FormulaOutput within the eSignal folder.

    3) Within FormulaOutput you should have the folder "AxData" and then subfolders named A-Z, and in each of these folders a text file for the data for each stock.


    Extra (VB Code):
    Since I can't promise to update the data, here's some VB code for those who are so inclined that will read July's text file (you'll need to modify the name for subsequent months) and then create each stock file. I made this for my use, so it's not the most user-friendly and I have no plans on fixing it up.

    Step 1: Choose a location/save your project into that folder. Create folder "Data" in here. Within folder Data, create folders named A through to Z.

    Step 2: Start a VB project - add a button named Command1 to Form1

    Step 3: Create a label, name it lblStatus. This will be updated as the program parses the data with the symbol it is currently working on.

    Step 4: Put this code into the form:

    Code:
    Private Sub Command1_Click()
       Dim l As Long
        l = 0
        Dim strLine As String
        
        Dim arrInfo() As String
        Dim arrAxes(1 To 8) As String
        Dim strLastStock As String
        
        'NASDAQTrader.com data to open
        Open App.Path & "\200606MV.TXT" For Input As #1
            While EOF(1) <> True
                Line Input #1, strLine
                
                If (l >= 1) Then
                    
                    arrInfo = Split(strLine, "|")
                    If (strLastStock <> arrInfo(0)) Then
                        If (strLastStock <> "") Then
                            'OK it's a new stock, so let's save the info on it..
                            boolSavedInfo = False
                            Open App.Path & "\Data\" & Left(strLastStock, 1) & "\" & strLastStock & ".txt" For Output As #2
                            Print #2, arrAxes(1)
                            Print #2, arrAxes(2)
                            Print #2, arrAxes(3)
                            Print #2, arrAxes(4)
                            Print #2, arrAxes(5)
                            Print #2, arrAxes(6)
                            Print #2, arrAxes(7)
                            Print #2, arrAxes(8)
                            Close #2
                        End If
                        strLastStock = arrInfo(0)
                    End If
                    
                    lblStatus = strLastStock
                    DoEvents
                    
                    'Get out of here if this is the end of the file
                    If (Left(arrInfo(0), 4) = "M - ") Then GoTo done
                    
                    'Fill an array within info on the top 8 MMs for volume
                    If (arrInfo(8) <= 8 And arrInfo(8) > 0) Then
                        arrAxes(arrInfo(8)) = arrInfo(5) & " (" & arrInfo(9) & "%)"
                    End If
                    
                End If
                l = l + 1
            Wend
        Close #1
    
    done:
    End Sub
    The data for each stock when the program is run will then be created. To use it copy folders A-Z in Data into eSignal's FormulaOutput\AxData folder. Create AxData if you don't already have it - and overwrite all existing files if you're doing an update obviously.

    Good luck to anyone, any suggestions for how to code the EFS in a better way are welcome. Apologies for the lack of comments in any code but it is pretty simple.
    Last edited by BlackPanther; 08-12-2006, 08:27 PM.

  • #2
    It'd be nice if when previewing a post, it doesn't empty the file selected for uploading.. also to upload multiple files would be nice! Anyway, here's the script:
    Attached Files

    Comment


    • #3
      Here's a screenshot. Data will be coming soon, just got to figure out how I can post it as it's too big (1/2MB) for posting on this site.
      Attached Files

      Comment


      • #4
        3) Within FormulaOutput you should have the folder "AxData" and then subfolders named A-Z, and in each of these folders a text file for the data for each stock.
        That seems like an extra step.

        What's the reason?

        Cool idea.

        Learned a trick from you.

        Thanks for sharing.

        Comment


        • #5
          Hey buzzhorton,

          If you're asking about folders A-Z - reason being that I found Windows got extremely slow when browsing to a folder having many thousands of files/folders in one directory. Perhaps this is no faster overall.. but is just a personal thing for it to be a little more organised.

          Finally found a free webhost to upload the data. Here it is:

          Last edited by BlackPanther; 08-12-2006, 08:28 PM.

          Comment


          • #6
            That's really cool you sharing all the data.

            Now, how about .BAT file to build/load the folders...lol!!

            Actually, it's not too hard.

            copy a*.* \A
            copy b*.* \B

            Out of curiousity, how exactly do you use this information in your trading?

            They "lie" on LEVEL II and laugh at us!

            They have LEVEL III.

            And it doesn't end there...

            Comment

            Working...
            X