First take the average daily volume of last 30 days. For stock IMVT this was the day before yesterday (25-09-23) 971K. Yesterday the volume on this stock was 5.3 million in the first hour. This is 5.45 times the average 30 day volume (5.45m/971k).
This is above the threshold of at least half the 30 day average volume within the first hour. So, if the volume the first hour of trading day would have been above 486k (971/2), it should be shown in the screener.
I realized there was a glitch in line 8, so I commented it out.
in addition I added a condition to ignore equities with RANGE=0 (there was no trading):
Timeframe(Daily)
VolAvg = average[30,0](volume)
c1 = VolAvg > 25000
//
Timeframe(default)
N = 1 //1=30mn-TF, 2=15mn-TF, 3=10mn-TF, 6=5mn-TF, 30=1mn-TF
FirstHalfHour = 153000
//c2 = 0
IF OpenTime = FirstHalfHour THEN
c2 = summation[N](volume) > (VolAvg / 2)
ENDIF
c3 = close > 4
c4 = range > 0
Cond = c1 AND c2 AND c3 AND c4
SCREENER[Cond](VolAvg AS "Vol average")
Hi Roberto,
Unfortunately no results while stock WDAY meets the criteria.
gr Marco
JSParticipant
Veteran
Hi @marco7630
Use your IG or IB because the volumes don’t match…
When you use IB do you have “real-time” access to the Nasdaq shares…?
What does IG or IB stand for?
JSParticipant
Veteran
These are the two brokers that ProRealTime works with…
(IG is mainly of the CFD contracts and IB (Interactive Brokers) is mostly futures contracts)
What version of PRT are you working on…?
I have no idea. I do not use the prorealtime platform to do trades
JSParticipant
Veteran
Okay, try this screener…
TimeFrame(Daily)
Avg30Vol=Average[30](Volume)
C1=Avg30Vol>250000
C2=Close>4
TimeFrame(30 minutes)
If OpenTime=153000 then
xVolume=Volume
EndIf
C3=xVolume>=Avg30Vol*0.5
Screener[C1 and C2 and C3](xVolume as "xVolume", Avg30Vol as "Avg30Vol")
Hi Roberto,
I get results now:-)
What do i need to add to see only stocks that are above the EMA50?
gr Marco
JSParticipant
Veteran
With which screener do you get results…?
TimeFrame(Daily)
Avg30Vol=Average[30](Volume)
C1=Avg30Vol>250000
C2=Close>4
TimeFrame(30 minutes)
If OpenTime=153000 then
xVolume=Volume
EndIf
C3=xVolume>=Avg30Vol*0.5
Screener[C1 and C2 and C3](xVolume as “xVolume”, Avg30Vol as “Avg30Vol”)
JSParticipant
Veteran
What timeframe do you want to use for the EMA50…?
TF (daily) or TF(30 minutes)
JSParticipant
Veteran
Try this one…
TimeFrame(Daily)
EMA50=ExponentialAverage[50](close)
Avg30Vol=Average[30](Volume)
C1=Avg30Vol>250000
C2=Close>4
C4=Close>EMA50
TimeFrame(30 minutes)
If OpenTime=153000 then
xVolume=Volume
EndIf
C3=xVolume>=Avg30Vol*0.5
Screener[C1 and C2 and C3 and C4](xVolume as "xVolume", Avg30Vol as "Avg30Vol")
Hi JS,
All the results are above the EMA50. But the results are not correct. For example stock FUL. Has an average 30 day volume (sma30) of around 300k. First hour candle yesterday was only 58k which is below the 50% of the average daily volume. However, it is in the screener results.
gr Marco