logo
Welcome Guest! To enable all features please Login or Register.

Notification

Icon
Error

2 Pages12>
Options
Go to last post Go to first unread
uasish  
#1 Posted : Thursday, May 11, 2006 1:38:51 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Seniors, I am finding mis match value of the indicator parked on my chart & in exploration reports.Even in inspection of exploration combo box for each security the value actually shown in the final list varies than that within the inspection box of that scrip. Initially i thought as Trough uses Zig whose last leg being dynamic this was happening.But even if i use DX() the same problem.Can u suggest how to get the value showing in the chart to get in exploration also in the same Day otherwise BarsSince also delays by another day. Regards Asish
wabbit  
#2 Posted : Thursday, May 11, 2006 2:02:46 PM(UTC)
wabbit

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers, Unverified Users
Joined: 10/28/2004(UTC)
Posts: 3,111
Location: Perth, Western Australia

Was thanked: 16 time(s) in 16 post(s)
For the majority of instances, when there is a difference between the results of an exploration and the chart, the cause is usually the number of bars used in the exploration. Have a read through of this thread on a similar topic: http://forum.equis.com/viewtopic.php?p=17189 Expand the number of bars used in the exploration, and compare the results. Please report your findings back here. Hope this helps. wabbit :D
mstt  
#3 Posted : Thursday, May 11, 2006 8:21:41 PM(UTC)
mstt

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers
Joined: 7/25/2005(UTC)
Posts: 1,042

Was thanked: 57 time(s) in 54 post(s)
Uasish Using "Minimum Records" for an exploration is the most common cause of explorations returning the "wrong" value. The many functions that use a form of exponential moving average require about 5 times the nominal "periods" parameter to return an accurate value. These functions include (but are not limited to) ADX, RSI and Wilders Smoothing. Functions with an "Nth" parameter also suffer when insufficient bars are loaded. There is no way to estimate how much data is required but "more" is better. ValueWhen() falls into this category. BarsSince() may need 2 bars or it may need 2000. If the event it triggers from does not occur within the nominated number of bars then N/A is the certain result. A "periods" parameter in any function ensures that at least "periods" bars are loaded, but many times this is not sufficient and the user must stipulate a larger number. Using the same number of bars as is loaded with each chart is sometimes suggested. This is usually overkill, but 100 to 500 can be quite appropriate, particularly with longer EMAs. Hope this helps. Roy MetaStock Tips & Tools
uasish  
#4 Posted : Friday, May 12, 2006 4:27:35 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Dear Seniors, I am flabergasted to see the response to my problem was so prompt & attended by such veterans whom i frankly idolize. How ever as per suggestion (though 500 bars is my default setting for datas) even after increasing to 5000 gives me the same problem.Plz try ,say only DX(14) in a new exploration & see whether it happens with you. Regards Asish
Justin  
#5 Posted : Friday, May 12, 2006 6:22:22 PM(UTC)
Justin

Rank: Advanced Member

Groups: Registered, Registered Users, Unverified Users
Joined: 9/13/2004(UTC)
Posts: 673
Location: Salt Lake City, UT

It sounds like you changed the chart "Load Options" not the Explorer load options. Click Tools>The Explorer and click the Options button at the bottom of the Explorer main menu. This is where you can "match" the load options in the Explorer with the Load Options of your charts.
uasish  
#6 Posted : Saturday, May 13, 2006 9:49:00 AM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Dear Pyra.... U were very right i didnt change the Explorer load option.Now after setting it to 1300 & putting just DX(14) the summary report of all scrips ,in the explorer the result is mis match than chart value.However clicking the individual scrips inspect report i find there the value is same as my chart.(Which in my earlier case of minimum data load option of the explorer, was also a mis match).Hope u can come out with a solution. Regards Asish
wabbit  
#7 Posted : Saturday, May 13, 2006 7:49:33 PM(UTC)
wabbit

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers, Unverified Users
Joined: 10/28/2004(UTC)
Posts: 3,111
Location: Perth, Western Australia

Was thanked: 16 time(s) in 16 post(s)
Asish, The results of my explorations and my charts match exactly, BUT there is a catch! This is what I did... Exploration 1. {ColA} DX(14) {filter} {none} Options: Load 1300 records Time taken to scan 2202 stocks : about 30 seconds Results agree with charted values: YES -- Exploration 2. {ColA} DX(14) {filter} {none} Options: Load 32767 records (the maximum number for explorations) Time taken to scan 2202 stocks : about 1 minute Results agree with charted values: YES -- Exploration 3. {ColA} DX(14) {filter} {none} Options: Load MINIMUM records Time taken to scan 2202 stocks : about 15 seconds Results agree with charted values: NO HOWEVER.... to match the value, the chart must also have the appropriate number of records loaded. I normally have the maximum amount chart loaded (65500 bars) (although there are not many stocks old enough to have this much data). If I load 65500 bars, the value of DX(14) for one company is say, 22. If I load 1300 bars, the value of DX(14) for the same company is 22. If I load 30 bars, the value of DX(14) for the company 24. So the results of Exploration 1 and Exploration 2 match the the chart only if I have 1300 bars or more loaded. The results of Exploration 3 match the chart if I have only 30 bars loaded. I don't have the code for the DX indicator with me right now (I have it somewhere I am sure) but I am pretty sure it uses PREV type values in its computations, which means that the value today will contain a (small) amount of yesterdays value and the day before vale and the day before that... If you try to skimp on the data loading then you are going to skew the result of the exponential computation. -- This goes to show the importance of having the right number of bars loaded in both your charts and explorations. Some people like to skimp on the bars loaded during explorations because they think it might save them time, but if you trade based on the results of an exploration that was producing flawed results because the indicators did not have enough history, then your trades will be flawed and you risk losing money. If you think that you need to experiment to find the minumum number of bars to load without skewing the results then I think you are sailing too close to the wind and need to find another hobby. Take up skydiving, BASE jumping, wild-pig hunting or something else less dangerous to your health than computer programming. If your explorations/system tests/code are taking too long to run, then: 1. Look carefully at your code. How many PREV functions do you have? Are they really necessary in your code, or have you added them just to see the results in report column? How many calls to ExtFml(), FmlVar() and Fml() do you have? These all slow down the execution of the code and hence the exploration (and system tests too!) 2. Don't explore the entire universe of stocks, warrants, options, indexes, mining companies, retailers, manufacturers etc if you only trade, say oil stocks. Separate your data into folders (your data provider should show you how, or there are third party software products available cheaply) so that you are scanning the minimum number of stocks; stocks that you actually trade. According to my data provider there are 2202 stocks on the ASX; so I scan only these without looking at options, warrants or indexes. 3. Get a faster computer. The cheapest option is to add RAM. As much as you can afford, and as much as your motherboard can hold. It takes about 30 seconds to add a stick of RAM, and you do not need to be a professional nerd to do it. The next cheapest option, after you have filled your quota of RAM is to get a faster HD. Look for one with caching, they are slighly faster than non-cached disks. SCSI discs are back in fashion, with 10000 RPM becoming the norm. Size does not necessarily equate to speed. Get the fastest disc your pocket can afford. Again, you do not have to be nuclear physicist to add another HD to your machine. It will take about 10 minutes. The last resort is to completely replace your machine (but don't throw the old one out!) 4. Manage your time better. If you get stressed about an exploration that takes 2 minutes or five minutes to complete then I think you need to relax more and get out of the house! How much time could you save by managing your day better than trying to better manage a computer? If you have any more questions, please ask. I hope this helps. wabbit :D
uasish  
#8 Posted : Sunday, May 14, 2006 12:57:20 AM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Wabbit Thks.The instant i matched 5000 bars loaded in my chart with the Explorer option to 5000 bars WOW the earlier Mis Match of chart value & Exploration report value Evaporised.All ur suggestion r very well taken & trading being my only proffession i fully accept ur views.However ur communication smells doseage of "Parent" ego.Once again i repeat all your suggestions r only for our sole benifit.Thks for solving my problem. Regards Asish
StorkBite  
#9 Posted : Sunday, May 14, 2006 7:30:10 AM(UTC)
StorkBite

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 3/19/2005(UTC)
Posts: 2,995

Was thanked: 14 time(s) in 10 post(s)
Quote:
However ur communication smells doseage of "Parent" ego.
:crylol: Hey Asish- The only egos here are those that want to help you suceed in using the Equis line of products. Don't read into it... Wabbit's a nice fellow and a great teacher! G
uasish  
#10 Posted : Monday, May 15, 2006 11:06:59 AM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Mr Wabbit, As u hopefully understand, g_stockman(another respected & keenly followed by me),needlessly reiteriate ur commitment towards our upliftment in understanding Metastock better.Plz help me these mismatch in exploration value & actual chart value is now eating in my brains.Actually i want a formula for the following situation;a:=+ DI rising & -DI falling ,ideally crisscrossing for few days;b:= ADXR(14) fallen from a recent peak & now rising from a trough.The following is my novice attempt towards the same ;;.} a:=PDI(14)-Ref(MDI(14),-1)<5; b:=Ref(Peak(2,ADXR(14),10),-1)<Peak(2,ADXR(14),10); m:=Ref(Trough(2,ADXR(14),10),-1)<Trough(2,ADXR(14),10); n:=If(BarsSince(b ),1,a); m+n=2 Here the eploration & chart loaded datas are 5000 bars,still the values of the chart & exploration is Mis Matching.Whereas in the inspection box of the scrip in explo the values r as on the chart.Plz help me in the formula becoz after the exploration identifies the scrip for me it already has broken out,little juice is left for me becoz as my trading strategy never allows me to hold more than 2 nights. Eagerly awating development from u & the seniors. Regards Asish
wabbit  
#11 Posted : Monday, May 15, 2006 3:02:52 PM(UTC)
wabbit

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers, Unverified Users
Joined: 10/28/2004(UTC)
Posts: 3,111
Location: Perth, Western Australia

Was thanked: 16 time(s) in 16 post(s)
Asish, Exploration Problems: Am I correct that your explorer results are different from the charts again. Are you using Zig(), Peak(), Trough(), LastValue() functions in your explorations? If you are, then these are the most likely culprits causing the different results in an exploration from the plotted indicator. These functions are all dynamic and extremely dangerous for exactly this reason. If you are still having problems with the explorations and "mis-matching", then please post all of the code you are using in the Exporation. It is very hard to provide assistance, and explain why an event is happening on your computer when we cannot see any of your code. It would also be extremely valuable for you to add a small portion of the results and a small portion of the chart so we can compare the two ourselves. -- I strongly suggest you rethink your tradng strategy if you are going to use the Peak and Trough functions as a basis for your trades. These functions, along with ZigZag and LastValue are hindsight indicators; they change their values in the past based on new information received, or in other words, they always make the "right decisions" with the benefit of hindsight. Read up in the MS Users Manual on the dangers of these functions in trading systems. I do not fully understand what you are trying to achieve, because like a computer, I need to be given instructions in very SPECIFIC terms. The use of "ideally" and "few" do not give clear instructions to the programmer. You must use words like "shall" and "three days" etc When you are as tired as I am right now, you need clear instructions to be able to write the correct code.
Asish wrote:
a:=+ DI rising & -DI falling ,ideally crisscrossing for few days;
You need to be very specific here. If you want to bound the two values to a range, you can do something like: Abs(PDI(14)-MDI(14))<5; To have this condition over 'x' consecutive bars: z:=Sum(Abs(PDI(14)-MDI(14))<5),x)=x; To have the two lines breaking a part after being in the bounded values for the 'x' bars: z:=Sum(Abs(PDI(14)-MDI(14))<5),x)=x; z=0 and Ref(z,-1)=1 and pdi(14)>mdi(14); Do you need to count how many times the two lines have crossed in the last 'x' days? This is possible too. Can you see how specific you need to be?
Asish wrote:
b:= ADXR(14) fallen from a recent peak & now rising from a trough.
I have already mentioned the dangers of this indicator, so I strongly suggest you think of an alternative. One of the very few good things with the indicator is that it can cut down on some code, sometimes. ROC(Zig(ADXR(14),10,%),1,%)>0; The Zig() function only rises or falls. To be rising, it must be coming out of a trough, so there is no need to try and catch the order of peaks and troughs. -- Try writing down each individual step that is required for your code to return a value of TRUE (or 1). Once you have written this down, then code each line, checking as you go through that each line returns the value that you expect. Debug your code line by line. There is no point getting to the end of the exploration to have unexpected results because your code has a mistake in the first line which is destroying the rest of your function. I hope this helps. wabbit :D
uasish  
#12 Posted : Monday, May 15, 2006 6:18:55 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Wabbit, WOW u reply in such short time.Just got ur response, let me go thru it step by step & will revert back tommorrow.I thought i was obssesed with my MS & glued to my computer becoz i am stil a green horn & wet behind the ears.Even veterans do so.Learning is like the last leg of Zig always dynamic,& in this forum many people like u r yet to reach the Peak where as i am still at Trough(100, :?: ,100),alas someday it has to reach the Peak & fall when my Trough will rise. Regards Asish
Jose  
#13 Posted : Monday, May 15, 2006 11:27:29 PM(UTC)
Jose

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 1/19/2005(UTC)
Posts: 1,065
Location: Koh Pha-Ngan, Earth

Was thanked: 2 time(s) in 2 post(s)
Asish, if u wanna b taken seriously here, try cutting out the "u/r/ur/becoz" SMS jive. Use plain English whereva possible. jose '-)
uasish  
#14 Posted : Tuesday, May 16, 2006 9:32:33 AM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Jose, This is what you are teaching me ?(Asish, if" "u" "wanna"" b" taken seriously here, try cutting out the "u/r/ur/becoz" SMS jive. Use plain English" whereva" possible. )THESE AMERICAN WAY OF ROLLING YOUR TOUNGE IS NOT NATIVE ENGLISH. Regards Asish NB: You yourself is using "u" see how spontaneously it came out .
Jose  
#15 Posted : Tuesday, May 16, 2006 11:08:52 AM(UTC)
Jose

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 1/19/2005(UTC)
Posts: 1,065
Location: Koh Pha-Ngan, Earth

Was thanked: 2 time(s) in 2 post(s)
Asish, with all respect, look up the meaning of "Irony". jose '-)
uasish  
#16 Posted : Tuesday, May 16, 2006 2:38:51 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Jose, Ok i am sorry ,if my language has disturbed you.To admit frankly i have blatantly "Copy,Pasted" many of your's & Roy's Calender Day Counter ,weekly data on daily etc since long. Regards Asish
uasish  
#17 Posted : Tuesday, May 16, 2006 3:07:59 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Wabbit, Your formula :{ROC(Zig(ADXR(14),10,%),1,%)>0; } is excellent.Instead of Trough function ,I have seen somewhere ,cant remember now , he has used {Ref(LOW,-4)=LLV(LOW,9)}.What is your suggestion.Here though the excellent hind sight is compromised but atleast the exploration result mismatch can be overcomed.However your formula{z:=Sum(Abs(PDI(14)-MDI(14))<5),x)=x; z=0 and Ref(z,-1)=1 and pdi(14)>mdi(14); }beautifully catches the 1st Condition now for the 2nd Condition ,forgoing ADXR rising ,plz help me with this new 2nd condition:ADX(14) rising and PDI(14) MDI(14) ADX(14){all these 3's value} are in a difference of max 4,means lowest low value of any(3 indicator's individual values) difference to there highest high value of each other is max 4. Regards Asish
wabbit  
#18 Posted : Tuesday, May 16, 2006 3:45:22 PM(UTC)
wabbit

Rank: Advanced Member

Groups: Registered, Registered Users, Subscribers, Unverified Users
Joined: 10/28/2004(UTC)
Posts: 3,111
Location: Perth, Western Australia

Was thanked: 16 time(s) in 16 post(s)
Unlike Excel where you could use something like max(1,2,3,4,5), MS will only allow you to compare two values: Max(1,2) or Min(1,2) To overcome this, you can nest the functions, like: Max(1,Max(2,Max(3,Max(4,5)))) or Min(1,Min(2,Min(3,Min(4,5)))) So all you need to do is to take the difference between the nested Max() and the nested Min() of the three functions and find the difference between them. wabbit :D
uasish  
#19 Posted : Tuesday, May 16, 2006 6:17:10 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Wabbit, Thks, excellent solution.I have learnt this nested function from you today.Using Mr Jose's :=)EMA - (BEMA), dll version is there any mismatch of values on the report page(not the inspection page) ? Regards Asish
uasish  
#20 Posted : Friday, May 19, 2006 3:06:55 PM(UTC)
uasish

Rank: Advanced Member

Groups: Registered, Registered Users
Joined: 8/13/2005(UTC)
Posts: 170

Thanks: 7 times
Respected Wabbit, Plz help me with the following :]a:=Peak(2,Zig(H,.75,$),.1); b:= Peak(1,Zig(H,.75,$),.1); m:=If(a>b,1,0); Alert(m,5) AND Trough(1,Zig(H,.75,$),.1)<>Ref(Trough(1,Zig(H,.75,$),.1),-1)} Here i want to avoid any signal from change in Trough whenever b > a . Regards Asish
Users browsing this topic
Guest (Hidden)
2 Pages12>
Forum Jump  
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.