Dip day traders.

Discussion in 'Stocks' started by wonderd, Nov 26, 2017.

  1. wonderd

    wonderd

    Hey everyone. I am looking for some stock suggestions. I'm looking for stocks that have a lot of up and downs throughout the day but usually stay around the same price so if I mess up and dont buy right I can just wait for the stock to return.

    I am relatively new to this strategy so I'm looking for stocks that can be forgiving.
     
  2. Try a scan for largest daily range.
     
    Hooter likes this.
  3. Here is a list of the 10 stocks with the lowest average absolute open to close movement as a percentage of high-low range over the last ten days. Includes only stocks with average volume over 100000 shares per day, price greater than $10.00, and also excludes warrants and preferred.

    DATE Symbol LastClose BuyDipsInd AvgVolume
    ---- ------ --------- ---------- ---------
    20171124, SYRS , 13.75, .2084, 110001
    20171124, AVA , 51.93, .2119, 662075
    20171124, GCO , 28.75, .2144, 269667
    20171124, MUJ , 14.41, .2193, 125606
    20171124, AVD , 20.1, .2235, 664831
    20171124, MOO , 60.76, .2244, 433174
    20171124, GCI , 11.66, .227, 257265
    20171124, KORU , 66.5, .2276, 592788
    20171124, SHOO , 39.8, .2285, 436551
    20171124, MVCB , 25.27, .2313, 286463


    Here, if you are interested, is the screen that produced this table:

    SELECT sdate,symbol,close,round(BuyDipsNow,4),round(AvgVolume,0) FROM
    ( SELECT sdate,symbol,close,avg(abs(close-open)/(high-low))
    OVER (ORDER BY sdate rows BETWEEN 10 PRECEDING AND CURRENT ROW) AS BuyDipsNow,
    avg(volume) OVER (ORDER BY sdate rows BETWEEN 10 PRECEDING AND CURRENT ROW) AS AvgVolume
    FROM stocks where volume > 0 AND (high-low) > 0 AND sdate > '20171101'
    ) WHERE sdate = '20171124' AND AvgVolume > 100000 AND close >= 10.00
    AND symbol NOT LIKE '%_W' AND SYMBOL NOT LIKE '%_P%'
    ORDER BY BuyDipsNow FETCH FIRST 10 ROWS ONLY
     
  4. Where do you run this query exactly?
     
  5. It is a sql query against an oracle database, but a similar query should run against any relational stock database (e.g. mysql,postgresql,etc.)

    You could run a very similar query against a dataframe in R loaded with all tickers via quantmod.
     
    CALLumbus, niko79542 and MauricioMTL like this.
  6. List I previously posted was incorrect. I forgot the partition by clause in the avg over query lines. Here is a corrected list.

    20171124,CUB , 62.15, .2076, 227700
    20171124,CLDT , 22.94, .2086, 402882
    20171124,EYE , 29.99, .2124, 283391
    20171124,IVC , 17.9, .2182, 601164
    20171124,CVX , 116.51, .2219, 4732718
    20171124,CODI , 16.8, .2238, 120509
    20171124,STAR , 11.34, .2243, 402518
    20171124,NATI , 44.38, .2257, 554636
    20171124,SRCL , 63.05, .2272, 1255045
    20171124,BSJH , 25.69, .2273, 164764

    And here is the corrected query:

    SELECT sdate,symbol,close,round(BuyDipsNow,4),round(AvgVolume,0) FROM
    ( SELECT sdate,symbol,close,avg(abs(close-open)/(high-low))
    OVER (PARTITION BY symbol ORDER BY sdate rows BETWEEN 10 PRECEDING AND CURRENT ROW) AS BuyDipsNow,
    avg(volume) OVER (PARTITION BY symbol ORDER BY sdate rows BETWEEN 10 PRECEDING AND CURRENT ROW) AS AvgVolume
    FROM stocks where volume > 0 AND (high-low) > 0 AND sdate > '20171101'
    ) WHERE sdate = '20171124' AND AvgVolume > 100000 AND close >= 10.00
    AND symbol NOT LIKE '%_W' AND SYMBOL NOT LIKE '%_P%'
    ORDER BY BuyDipsNow FETCH FIRST 10 ROWS ONLY;
     
    VPhantom and CALLumbus like this.