- Katılım
- 23 Eki 2020
- Mesajlar
- 1,828
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= From: tan ming <reminiscenostalgia[at]hotmail.com> To: equismetastock[at]yahoogroups.com <equismetastock[at]yahoogroups.com> Date: Wednesday, March 1, 2006, 9:25:29 AM Subject: [EquisMetaStock Group] Zigzag and average volume Hi Jose, I had read the link and plot the code from you. However it display volume for UpSwing and DownSwing but didn't display and average volume. Between one tough and peak, the indicator should display the average volume. There will be one value only which : is sum of volume between the tough and peak divided by the number of bars between tough and peak. Perhaps you might miss the point. Conveying idea across email maybe one of the difficult thing to do. Regards. Adrian =-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= From: Jose Silva <josesilva22[at]yahoo.com> To: equismetastock[at]yahoogroups.com <equismetastock[at]yahoogroups.com> Date: Wednesday, March 1, 2006, 2:23:51 PM Subject: [EquisMetaStock Group] Re: Zigzag and average volume Adrian, the previously posted indicator plots average Volume for the up/downSwings as per your original request. Set the "Avg Volume: [1]UpSwing, [2]DownSwing, [3]Both" user input to [3] to see both up/downSwing average Volume. Multiply this output by peak/trough signals to get single values, as in the indicator below: |
|
Volume - Up/DownSwing Average { Up/DownSwing Average Volume v3.0 CCopyright 2006 Jose Silva. For personal use only. http://www.metastocktools.com } { User inputs } choose:=Input("Avg Volume: [1]UpSwing, [2]DownSwing, [3]Both",1,3, 3); ch:=Input("ZigZag minimum change %",.01,100,5); plot:=Input("Up/Down [1]Avg Vol [2]Swings, [3]ZigZag, [4]Pk/Tr",1,4, 1); { ZigZag } zz:=Zig(C,ch,%); { Up/Down bar count } pkBars:=PeakBars(1,C,ch); trBars:=TroughBars(1,C,ch); { Peaks/Troughs } pk:=pkBars=0; tr:=trBars=0; { ---------- *** UpSwing Volume *** ---------- } { Up swings } UpSwing:=zz>Ref(zz,-1); { Up swing volume } UpSwingVol:=V*UpSwing; { Accumulate & reset UpVolume } acc:=Cum(UpSwingVol); accUpVol:=acc-ValueWhen(1,pkBars=0,acc); { Average UpSwing Volume } avgUpVol:=accUpVol/Max(trBars,.00001); { Restrict avg Volume to peak bar } avgUpVolPk:=Ref(avgUpVol,-1)*pk; { --------- *** DownSwing Volume *** --------- } { Down swings } DwSwing:=zz<Ref(zz,-1); { Down swing volume } DwSwingVol:=V*DwSwing; { Accumulate & reset DownVolume } acc:=Cum(DwSwingVol); accDwVol:=acc-ValueWhen(1,trBars=0,acc); { Average DownSwing Volume } avgDwVol:=accDwVol/Max(pkBars,.00001); { Restrict avg Volume to trough bar } avgDwVolTr:=Ref(avgDwVol,-1)*tr; { Choose Volume display } swingAvgVol:= If(choose=1,avgUpVol, If(choose=2,avgDwVol, avgUpVolPk-avgDwVolTr)); { Plot in own window } If(plot=1,swingAvgVol, If(plot=2,UpSwing-DwSwing, |
> Perhaps you might miss the point. Conveying idea across email maybe one of the difficult thing to do. Usually yes, but perhaps not in this case. Please read my reply from the original post: "I'll leave (your) requests 3 & 4 for you as an exercise in adapting existing code." Adrian, please consider the following:
http://www.metastocktools.com | |
| |
Source / From: |