eiffel-mas-discuss Mailing List for Market Analysis System (Page 4)
Brought to you by:
jcochrane
You can subscribe to this list here.
2000 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(2) |
Jun
|
Jul
(2) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2002 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(3) |
Dec
(1) |
2003 |
Jan
(4) |
Feb
(2) |
Mar
(10) |
Apr
(3) |
May
(78) |
Jun
(7) |
Jul
(11) |
Aug
(4) |
Sep
(14) |
Oct
(5) |
Nov
(19) |
Dec
(4) |
2004 |
Jan
(4) |
Feb
(4) |
Mar
(9) |
Apr
(6) |
May
(7) |
Jun
(5) |
Jul
(10) |
Aug
|
Sep
(5) |
Oct
(2) |
Nov
(3) |
Dec
(4) |
2005 |
Jan
(3) |
Feb
(5) |
Mar
|
Apr
|
May
(3) |
Jun
(3) |
Jul
(1) |
Aug
(2) |
Sep
|
Oct
(1) |
Nov
|
Dec
|
2006 |
Jan
(8) |
Feb
(3) |
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
(3) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Jim C. <jt...@di...> - 2004-04-10 00:49:39
|
All - In spite of my busy schedule, I've managed to find the time to fix the bug that was causing a core dump with the -w option when reading data from yahoo in the new format.* While doing that, I decided to also fix the other yahoo-related problem - the addition of an extra field in the data from yahoo - what appears to be the split-adjusted close value. This field would show up in mas as an open interest field. The fix was to ignore, for each record, any extra fields beyond the expected 6 for stocks. I'll probably put the fixed executable up on sourceforge soon. However, if you are interested in the fixed version, send me an email to let me know (at my jtc at dim.com address). The more requests I receive, the more urgent classification I'll give this task, and the sooner I'll be likely to get around to uploading it. IMPORTANT NOTE: If you've been using mas with the -w option and have cached data files lying around (which reside in a directory named cached_data under your mas directory), you need to delete these files so that mas will create a fresh cache. Otherwise, the files, which are likely to be in the old format (with the extra field), will not be updated correctly with the result that you will not see the latest "fixed" data. This is important because I will not have the time to help people who have not read this note and taken the needed action. (Of course, one purpose for the discussion list is for fellow mas users to help those who are struggling with such issues, right?) This will also give those who have not yet responded to my query about your location to do so in the same email (that is, just include your country of residence, and optionally, your city in the email). [Thanks again to those who have sent in this info.] * For those who are interested, the problem was caused by yahoo adding an html comment at the beginning of the data. The fix was simple: Since the actual data starts with a number, the day part of the date, I changed the code to simply throw away any lines that do not begin with a number. |
From: Jim C. <jt...@di...> - 2004-04-04 04:14:18
|
Regarding the bug in the server in processing yahoo data, I think that anyone who is using the "get data from yahoo" option is going to be affected by this, which I would guess is at least 25% of mas users. If you are affected and would like a fix, even though I've acknowledged the bug, it will be useful to me, and to you, if you send me a quick email letting me know that you're affected - Just reply to my address in this email - jtc at dim.com - and keep the subject of this email in your subject line so that my filter puts it in the right directory. This will allow me to gage how many are affected by this problem and could have a bearing on when I get around to fixing it. Jim |
From: Jim C. <jt...@di...> - 2004-04-04 03:28:43
|
All - Hoping to be pre-emptive, I thought it'd be wise to announce this bug that Pedro found recently. It appears that yahoo.com has made a small change in the format of its data that is causing the mas server to crash. My guess is that some of you have already encountered this. Can't promise when it will be fixed, but it's on "the list". Jim ------- Forwarded Message ... ... when I went to start the mas server with the defaults I use to get yahoo data it gave a segmentation fault, so I tried several times and every time I got the same. I imagined it must have something to do with the yahoo data so I went to download it manually with wget and noticed it now has this at the end of the file: <!-- chart2.finance.dcn.yahoo.com uncompressed Thu Apr 1 17:49:07 PST 2004 --> ------- End of Forwarded Message |
From: Jim C. <jt...@di...> - 2004-04-04 02:41:16
|
All - I've gotten about six responses to my request for info. on where people are located. Thanks very much to those who responded. I'm including a summary of these results below for those who are interested. To those who haven't responded: You may be busy, but it only takes about 20 seconds to hit the "respond" button, type in the country (and city, if you like) where you are located, and hit the "send" button. And if you thinking "How will doing this help me?", the more helpful feedback I get for this system, the more I will be inspired to add new and useful features, and the more likely it is that a new version with features you've been wanting will become available. Jim Here is the summary: San diego california, usa Redhat (don't recall the version) Australia, near Canberra. Linux (Red Hat 9) 2.4.20-9 Java 1.4.1 mas-1.6.6g ... but only in tinkering mode. Longmont Colorado running on Linux in server mode only. Sydney, Australia. RedHat Linux 9 using kernel version 2.4.20-9 San Mateo, California Windows XP jre 1.4.1 mas1.6q not working for me though ... [There is a problem with the installation process on Windows XP and 2000 - jtc.] Toronto, Canada MAS 1.6.6g Debian Linux (3.x) |
From: David C. <dcr...@in...> - 2004-03-24 07:30:57
|
Australia, near Canberra. Linux (Red Hat 9) 2.4.20-9 Java 1.4.1 mas-1.6.6g ... but only in tinkering mode. Trying to trade on the ASX only. --David |
From: Yared D. <yde...@co...> - 2004-03-24 05:59:12
|
San Mateo, California Windows XP jre 1.4.1 mas1.6q not working for me though ... ----- Original Message ----- From: <eif...@li...> To: <eif...@li...> Sent: Tuesday, March 23, 2004 8:01 PM Subject: Eiffel-mas-discuss digest, Vol 1 #75 - 1 msg > Send Eiffel-mas-discuss mailing list submissions to > eif...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss > or, via email, send a message with subject or body 'help' to > eif...@li... > > You can reach the person managing the list at > eif...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Eiffel-mas-discuss digest..." > > > Today's Topics: > > 1. Question - international use of MAS (Jim Cochrane) > > --__--__-- > > Message: 1 > To: eif...@li... > Date: Tue, 23 Mar 2004 11:44:41 -0700 > From: Jim Cochrane <jt...@di...> > Subject: [MAS-discuss] Question - international use of MAS > > Hi all. > > You probably all know this, but in case not, I am the main author of the > MAS product. > > I'd like to know where everyone is located, both so that I can brag > about the international appeal of MAS on my resume [:-)] and because > this is useful information for future planning for MAS development. > > I'd appreciate it if you would send me an email (just replying to this > email should work) letting me know what country you live in. (The city > would be nice too, but that's optional.) It would also be helpful if > you would include what platform (e.g., Windows 98, Redhat 7.3, ...) > you're running MAS on and what version of MAS you're using; but this is > optional - If you only have time to send a line like "I live in Peru.", > that's fine and very helpful. > > I do know the nationality of some of you from past email communications, > but it would still be helpful if you would send this information so that I > have it all in one "folder". > > (It would probably be wise for me to put this in an online survey, but > I think mas-discuss is a good start - a place where, I believe, serious MAS > users hang out.) > > > Thanks! > Jim Cochrane > > > > --__--__-- > > _______________________________________________ > Eiffel-mas-discuss mailing list > Eif...@li... > https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss > > > End of Eiffel-mas-discuss Digest |
From: Paul T. <pta...@ya...> - 2004-03-24 05:35:48
|
Jim, I live in Sydney, Australia. My platform is RedHat Linux 9 using kernel version 2.4.20-9 I am currently running mas 1.6.6g an dtrading on the US and ASX markets. Regards, Paul On Wed, 2004-03-24 at 15:01, eif...@li... wrote: > Send Eiffel-mas-discuss mailing list submissions to > eif...@li... > > To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss > or, via email, send a message with subject or body 'help' to > eif...@li... > > You can reach the person managing the list at > eif...@li... > > When replying, please edit your Subject line so it is more specific > than "Re: Contents of Eiffel-mas-discuss digest..." > > > Today's Topics: > > 1. Question - international use of MAS (Jim Cochrane) > > --__--__-- > > Message: 1 > To: eif...@li... > Date: Tue, 23 Mar 2004 11:44:41 -0700 > From: Jim Cochrane <jt...@di...> > Subject: [MAS-discuss] Question - international use of MAS > > Hi all. > > You probably all know this, but in case not, I am the main author of the > MAS product. > > I'd like to know where everyone is located, both so that I can brag > about the international appeal of MAS on my resume [:-)] and because > this is useful information for future planning for MAS development. > > I'd appreciate it if you would send me an email (just replying to this > email should work) letting me know what country you live in. (The city > would be nice too, but that's optional.) It would also be helpful if > you would include what platform (e.g., Windows 98, Redhat 7.3, ...) > you're running MAS on and what version of MAS you're using; but this is > optional - If you only have time to send a line like "I live in Peru.", > that's fine and very helpful. > > I do know the nationality of some of you from past email communications, > but it would still be helpful if you would send this information so that I > have it all in one "folder". > > (It would probably be wise for me to put this in an online survey, but > I think mas-discuss is a good start - a place where, I believe, serious MAS > users hang out.) > > > Thanks! > Jim Cochrane > > > > --__--__-- > > _______________________________________________ > Eiffel-mas-discuss mailing list > Eif...@li... > https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss > > > End of Eiffel-mas-discuss Digest |
From: Stephen O. <st...@os...> - 2004-03-24 05:11:36
|
Longmont Colorado running on Linux in server mode only. At 09:01 PM 3/23/2004, you wrote: >Send Eiffel-mas-discuss mailing list submissions to > eif...@li... > >To subscribe or unsubscribe via the World Wide Web, visit > https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss >or, via email, send a message with subject or body 'help' to > eif...@li... > >You can reach the person managing the list at > eif...@li... > >When replying, please edit your Subject line so it is more specific >than "Re: Contents of Eiffel-mas-discuss digest..." > >Today's Topics: > > 1. Question - international use of MAS (Jim Cochrane) >Message: 1 >Message-Id: <200...@ju...> >To: eif...@li... >Date: Tue, 23 Mar 2004 11:44:41 -0700 >From: Jim Cochrane <jt...@di...> >Subject: [MAS-discuss] Question - international use of MAS >Sender: eif...@li... >Precedence: bulk >List-Unsubscribe: ><https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss>, > ><mailto:eif...@li...?subject=unsubscribe> >List-Id: Mailing list for MAS discussion ><eiffel-mas-discuss.lists.sourceforge.net> >List-Post: <mailto:eif...@li...> >List-Help: ><mailto:eif...@li...?subject=help> >List-Subscribe: ><https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss>, > ><mailto:eif...@li...?subject=subscribe> >List-Archive: ><http://sourceforge.net/mailarchive/forum.php?forum=eiffel-mas-discuss> > >Hi all. > >You probably all know this, but in case not, I am the main author of the >MAS product. > >I'd like to know where everyone is located, both so that I can brag >about the international appeal of MAS on my resume [:-)] and because >this is useful information for future planning for MAS development. > >I'd appreciate it if you would send me an email (just replying to this >email should work) letting me know what country you live in. (The city >would be nice too, but that's optional.) It would also be helpful if >you would include what platform (e.g., Windows 98, Redhat 7.3, ...) >you're running MAS on and what version of MAS you're using; but this is >optional - If you only have time to send a line like "I live in Peru.", >that's fine and very helpful. > >I do know the nationality of some of you from past email communications, >but it would still be helpful if you would send this information so that I >have it all in one "folder". > >(It would probably be wise for me to put this in an online survey, but >I think mas-discuss is a good start - a place where, I believe, serious MAS >users hang out.) > > >Thanks! >Jim Cochrane > > > > >_______________________________________________ >Eiffel-mas-discuss mailing list >Eif...@li... >https://lists.sourceforge.net/lists/listinfo/eiffel-mas-discuss |
From: Jim C. <jt...@di...> - 2004-03-23 18:45:08
|
Hi all. You probably all know this, but in case not, I am the main author of the MAS product. I'd like to know where everyone is located, both so that I can brag about the international appeal of MAS on my resume [:-)] and because this is useful information for future planning for MAS development. I'd appreciate it if you would send me an email (just replying to this email should work) letting me know what country you live in. (The city would be nice too, but that's optional.) It would also be helpful if you would include what platform (e.g., Windows 98, Redhat 7.3, ...) you're running MAS on and what version of MAS you're using; but this is optional - If you only have time to send a line like "I live in Peru.", that's fine and very helpful. I do know the nationality of some of you from past email communications, but it would still be helpful if you would send this information so that I have it all in one "folder". (It would probably be wise for me to put this in an online survey, but I think mas-discuss is a good start - a place where, I believe, serious MAS users hang out.) Thanks! Jim Cochrane |
From: Paul T. <pta...@ya...> - 2004-03-22 07:05:05
|
If so I'd like to hear about any problems you had - I keep getting an error in the MA_Client class. Also the .ma_clientrc file doesn't seem to be in the rpm file and when I use the 1.6.6 version it can't open it ?? Any suggestions welcomed !! Paul |
From: Paul T. <pta...@ya...> - 2004-03-21 04:28:10
|
I noticed a couple of FAQs related to this topic ( not sure how old ) so the following may help Linux users:_ #!/usr/bin/expect -- set HOME "/home/mas" if ![ catch { exec netstat -plt | grep mas > $HOME/net.out }] { } if {[ file exists "$HOME/net.out" ]} { set inFile [ open $HOME/net.out "r" ] while {[ gets $inFile line ] != -1 } { scan $line "%s%s%s%s%s%s%s" junk junk junk junk junk junk pid regsub "\/" $pid "\t" pid scan $pid "%s%s" myPid junk exec kill $myPid } } You may have to change the HOME setting to the directory where you want the net.out file to be put. This handles multiple mas servers and I generally run it before starting the server because mas can get confused ( badly ) if it has more than one server with the same port ID. Expect should be in /usr/bin but check first. This needs to be run by the same user who started the server. Paul |
From: Paul T. <pta...@ya...> - 2004-03-21 03:38:41
|
I noticed when reading the FAQs that there was a solution to reversing the data - from latest at the top to latest at the bottom - which gave a highly complicated little script. For Linux users try tac ( cat backwards ). Also I find that I sometimes get multiple entries for the same date when using yahoo historical data and cat ./Data/$file.txt | uniq > junk mv junk ./Data/$file.txt solves that problem. Also if anyone is using linux and would like some handy data collection scripts let me know via this list. I also collect index data for lots of US and ASX indices and track trend info - I'm willing to pass this stuff on as well - so long as its accepted free of liability. Regards, Paul |
From: Paul T. <pta...@ya...> - 2004-03-21 03:30:34
|
Greetings !! Has anyone installed the mas-1.6.6q magc GUI ?? If so have they encountered an error "exception in thread "main" java.lang.NoClassDefFoundError: mas_gui/DataSetBuilder at MA_Client.main(MA_Client.java:10)" I have installed it several times and eveything seems to be where it should be - BUT :-( Also it would be interesting to hear from people who are actually using the system to trade. I'm using it with some indicators I built myself - with Jim's help - and found that the real problem is not so much the analysis as collecting and maintaining good data quality. My guess is that 80% of the effort I expend on trading is related to data issues and over 90% of the code I've written is to keep the data clean and up-to-date. Paul |
From: VileSYN <dar...@sb...> - 2004-02-15 06:22:20
|
> On Sat, 2004-02-14 at 19:28, Jim Cochrane wrote: So far 1.6.6q is running great on RedHat Linux 9. Great work! Thank you for the open interest addition!=20 This was not an easiest task. I noticed a lot of the documentation in the tarball that was focused on Windows installs. Was this intentional? Anyways. The configure_user script didn't work without changing the MAS_ROOT_DIR which is pretty obvious, but thought maybe other users would want to know if the problem was to arise.=20 When I get time, I will test the RPM. For now I'll enjoy the tarball install. Thanks again! -Dennis Brown >=20 > > To anyone who is trying out or plans to try out the new 1.6.6q release, > > I've gotten a couple bug reports for the Windows version, but it would = also > > be helpful to hear about installation and running of the new release go= ing > > smoothly. > >=20 > > So if you install 1.6.6q and everything goes smoothly, sending me a sho= rt > > email reporting this success will be helpful. > >=20 > >=20 > > Thanks. > > Jim Cochrane (MAS author) > >=20 > >=20 > > ------------------------------------------------------- > > SF.Net is sponsored by: Speed Start Your Linux Apps Now. > > Build and deploy apps & Web services for Linux with > > a free DVD software kit from IBM. Click Now! > > http://ads.osdn.com/?ad_id=3D1356&alloc_id=3D3438&op=3Dclick > > _______________________________________________ > > Eiffel-mas-announce mailing list > > Eif...@li... > > https://lists.sourceforge.net/lists/listinfo/eiffel-mas-announce |
From: Jim C. <jt...@di...> - 2004-02-15 01:31:25
|
To anyone who is trying out or plans to try out the new 1.6.6q release, I've gotten a couple bug reports for the Windows version, but it would also be helpful to hear about installation and running of the new release going smoothly. So if you install 1.6.6q and everything goes smoothly, sending me a short email reporting this success will be helpful. Thanks. Jim Cochrane (MAS author) |
From: Jim C. <jt...@di...> - 2004-02-13 07:21:00
|
As promised, the Linux version of the 1.6.6q release has been made available on the download page for the MAS project. I decided to produce the standard *.rpm and *.tar.gz files containing the executables. Also, contrary to my original plans, the release includes the new graphical shell, the MAS Control Terminal and includes some auto-configuration functionality. This has been tested successfully on my Redhat 7.3 machine. If others experience problems, please send me an email, along with the distribution you're using and the linux kernel version (uname -a). I would also appreciate hearing about cases in which everything goes smoothly. Note: You will need to have glibc 2.2 or greater installed. The system won't work with glibc2.1 or less. I recommend reading the release notes before downloading: http://sourceforge.net/project/shownotes.php?release_id=215137 The new release can be downloaded from: http://sourceforge.net/project/showfiles.php?group_id=6838&package_id=6938&release_id=215137 Jim Cochrane |
From: Jim C. <jt...@di...> - 2004-02-06 09:08:17
|
I've just released a new beta release of MAS for Windows. I'm calling this release 1.6.6q. I'm hoping to release a Linux version soon, probably within the next two weeks. I'd like to invite those who use the Windows version of MAS to download this new release and send me feedback about what you like and don't like. I've made some fairly substantial improvements to the system, especially with respect to ease of installation and use, mainly by employing a graphical shell with the clunky name MAS Control Terminal (suggestions for a better name are welcome). (The documentation, however, needs more work, although some changes and improvements for this release have been made.) So please - try it out and let me know what you think. You can download the new Windows version at: http://sourceforge.net/project/showfiles.php?group_id=6838&package_id=6938&release_id=215137 Here are the current release notes for 1.6.6q: Notes: This is a beta release, in preparation for a planned production release (which will probably be numbered 1.6.7). Besides some enhancements to the server (such as some new "operators" and a "Commodity Channel Index" indicator constructed with the new operators), the main feature of this release is a much-improved setup/install program for the Windows version, which should make it easier for non-technical users to install the system and start using it than with the previous release. As of Feb. 5, 2004, only the Windows version is included here, but I'm hoping to find the time to make the files for the Linux version available in the next week or so. The Linux version for this release will probably consist of the executables themselves, rather than the complete rpm and tar.gz versions. The planned 1.6.7 release will, of course, be a complete release. Enjoy. Jim Cochrane |
From: aisha a. <ais...@ya...> - 2004-01-13 09:17:42
|
i need help about the protocol that is being used between the client and the server to communicate with each other i have the grammer for it but what is the exact protocol being used for it aisha --------------------------------- Do you Yahoo!? Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes |
From: aisha a. <ais...@ya...> - 2004-01-13 09:13:43
|
subscribe --------------------------------- Do you Yahoo!? Yahoo! Hotjobs: Enter the "Signing Bonus" Sweepstakes |
From: Jim C. <jt...@di...> - 2004-01-06 06:33:56
|
Hi Chris. > Hello. > > After a few days of trying, I have managed to create a new indicator = > that I would like to add to the GUI. The indicator appears in the MAS = > command prompt and it is returning the correct data, but I have been = > unable to get it to appear in the GUI. I am using version 1.65a under = > Windows 2000 and have followed instructions in the FAQ for adding the = > indicator. I just copied a line in the .ma_clientrc file and changed = > the name to my indicator. The name in this file matches exactly the = > name I used when creating it. I also have an editor that can convert = > the file for editing in Windows. Is there something else that I am = > missing? > > Thanks in advance for any help anyone can offer. OK, you've read the FAQ so you're aware of the newline/linefeed problem and it sounds like you've attempted to deal with it. The cause of your problem might be (and I think this is not mentioned in the FAQ - it should be) that the GUI program only knows how to read the file in UNIX format. By editing it, you've probably converted it to DOS format, or it may be a mixture. (Sorry this is so messy. I'm hoping to fix this problem in future versions.) Do you have a way to find out the file's contents in terms of newlines/linefeeds? (cygwin includes a od command that can be used for this purpose.) Another possible solution occurred to me: Obtain dos2unix.exe from the cygwin package. It will convert a DOS-format file to UNIX. You can run it on .ma_clientrc after you have edited it. Hopefully this will work. A quick google search revealed this site, with a cygutils package that apparently includes dos2unix: http://www.neuro.gatech.edu/users/cwilson/cygutils-package/ Skip to the download section at the bottom of the page to download it. Hope this helps. Jim |
From: ckeblack <cke...@be...> - 2004-01-06 04:16:38
|
Hello. After a few days of trying, I have managed to create a new indicator = that I would like to add to the GUI. The indicator appears in the MAS = command prompt and it is returning the correct data, but I have been = unable to get it to appear in the GUI. I am using version 1.65a under = Windows 2000 and have followed instructions in the FAQ for adding the = indicator. I just copied a line in the .ma_clientrc file and changed = the name to my indicator. The name in this file matches exactly the = name I used when creating it. I also have an editor that can convert = the file for editing in Windows. Is there something else that I am = missing? Thanks in advance for any help anyone can offer. Chris Blackmon |
From: Mick G. <mi...@mi...> - 2003-12-30 18:46:57
|
Looking for anyone willing to share their collection of market analyzer formulas to give a newbie a head start. I've already learned how to create simple analyzers however my knowledge around technical analysis is still rather immature so creating useful analyzers is still a learning experience for me. I'd love to see what others are doing with things like RSI, etc. Any help is greatly appreciated. |
From: Jim C. <jt...@di...> - 2003-12-11 06:09:36
|
Hi Karl. (I'm also sending my response to the mas-discuss list because I think the list members will be interested in this discussion and, perhaps, will want to participate. I recommend you include the list in your responses, so that people can continue to monitor the discussion - plus, someone there might be able to help you.) > Before I spend much more time spinning wheels trying to hack away at > your program, I thought it best to ask for some advice. Specifically, > I'd like to ha ve the system behave like a basic expert system ( fancy > if then else stuff ) where I have several BETWEEN ( GTE LTE ) operations > on different technical indicators. > > As an example, let's say I want to buy IF the MACD Difference is > GTE 0 AND LTE 1 - AND - IF the MACD Signal .. is GTE 1 AND LTE 2 etc. > I'll probably have a dozen or so 'rules'. Could you provide some hints > or examples of how I shou ld begin this process? An example with even > just two conditions could easily b y used as a model for any program I > would like to write. If you haven't already, I would recommend first reading the creating_market_analyzers file in the doc directory. Actually, I'll enclose the the latest version at the end of this email, which is up to date with a couple name changes I've incorporated into the latest version of MAS (which, I believe, are in 1.6.6g). You'll probably want to read about examples 1, 2, and 3, where 3 combines the analyzers created in 1 and 2. This provides a lesson on how to implement an AND condition. Here's a description of the examples from the file: Example 1 shows how to create a market analyzer that checks if the stochastic %D value crosses from above to below 35% for daily data. Example 2 shows how to create two analyzers that give signals on weekly data when the MACD Difference line crosses above (bullish) and below (bearish) the MACD Signal line. Example 3 shows how to create a composite market analyzer that uses the one created in Example 1 combined with the bullish analyzer from Example 2. This analyzer produces a buy signal for markets that meet the criteria - weekly MACD crossover shows an uptrend and daily stochastic below 35% shows an oversold condition. You also might find it helpful to read the creating_indicators file. After reading these examples, you may have further questions. Please also send those to the mas-discuss list. And if anyone else has knowledge, experiences, or caveats to share regarding creating market analyzers, your response is welcome. Karl, you might want to also check the discuss list archives at: http://sourceforge.net/mailarchive/forum.php?forum_id=6453 (You can search the archive, e.g., for discussion on indicators or analyzers.) There has not been much discussion on analyzers, but there has been some on creating indicators, which may be of interest to you, since indicators are needed to create market analyzers. (Also, sometimes creating a complex analyzer is easier by first creating an indicator that implements some of the needed logic. For an example of a complex indicator, see the following archived email: http://sourceforge.net/mailarchive/message.php?msg_id=5606890 ) Good luck. > > Thank you - in advance - as they say. > > n.b. > > I have attached two spreadsheets ( same content diff format ) that > address th e math behind the MACD and STOCHASTIC. As some of the users > have commented about MACD value questions, I found seeing the 'real' > numbers useful. BigCharts i s not always correct in its numbers. > One file is in standard OpenOffice format , the other in Excel format. Have you found any discrepancies between MAS's values and the figures you've come up with? Jim Creating Market Analyzers with the Market Analysis Server This document provides a tutorial on creating market analyzers with the Market Analysis Server (MAS). It consists of a brief introduction to the concepts used by the MAS command-line interface for creating market analyzers, as well as some specific examples of creating an analyzer. A market analyzer, also referred to as an event type, is a set of criteria to be used in analysis of market data, resulting in notification (typically by email) of events that meet the criteria. An example of such an event is when the MACD difference line crosses above the MACD signal line. In order to use more than one criterion, composite market analyzers, made up of other market analyzers, can be constructed. Example 2 below shows how to do this. Example 1 shows how to create a market analyzer that checks if the stochastic %D value crosses from above to below 35% for daily data. Example 2 shows how to create two analyzers that give signals on weekly data when the MACD Difference line crosses above (bullish) and below (bearish) the MACD Signal line. Example 3 shows how to create a composite market analyzer that uses the one created in Example 1 combined with the bullish analyzer from Example 2. This analyzer produces a buy signal for markets that meet the criteria - weekly MACD crossover shows an uptrend and daily stochastic below 35% shows an oversold condition. Example 4 shows how to create a market analyzer that checks for volume spikes. This can be useful to detect stocks where a volume spike precedes a strong price breakout, which sometimes happens when knowledgeable investors act on news not yet readily available to the public. Example 5 shows how to create what I call the "[Slope of MACD, Slope of Slope of MACD] Trend Analyzers". Note that after creating an indicator you will need to save (the s option) the indicator before exiting the market analyzer editing menu. Example 1: Stochastic %D Cross-below 35% First, make sure that the mas server is running. You can either run it in the foreground and use its command-line interface directly, or you can run it in the background and connect with it using either the macl or maclj scripts. Once you have access to the MAS command-line interface, enter 'm' (Edit market analyzers) from the main menu. Then enter 'c' (Create a new market analyzer). Next choose 's' (Simple) to make a simple (not compound) market analyzer. When it asks if you want to use one or two technical indicators, choose two. (You want one for Stochastic %D and one for the 35% crossover value.) Next, for the left technical indicator, select "Stochastic %D". For the right indicator, select "Line". It will then ask for the Line's starting (leftmost) y value. Since you want the crossover value to be 35%, enter 35. When it asks for the Line's slope, enter 0. Since a slope of 0 means the line does not rise or fall, this ensures that the y value of the line will remain 35 for the length of the line. The system will then ask for the trading period type for the new market analyzer. Since you want the stochastic crossover criteria to be for daily data, select "daily". It will then ask if the crossover detection should be below-to-above, above-to-below, or both. Select "above-to-below". It will then ask if you want to define an operator (which will add extra criteria to the analyzer). You don't need this, so answer no. Next, you will be asked to select the signal type, either Buy, Sell, Neutral, or Other. Select Buy. The system will then ask for a name for the new market analyzer (event). Enter a name that you think is appropriate, such as: Stochastic %D/35% oversold crossover - Buy signal. This completes the definition of the Stochastic %D above to below crossover market analyzer. You can define a (bearish) Stochastic %D below to above (65%) analyzer by following the same steps above, except for entering 65 for the y start value, "below-to-above" for the crossover specification, and Sell as the signal type. Example 2: MACD Difference/Signal Crossover This example shows how to create two analyzers that give signals on weekly data when the MACD Difference line crosses above (bullish) and below (bearish) the MACD Signal line. We will start with the bullish analyzer that detects when MACD Difference crosses above MACD Signal. From the main menu, choose 'm' (Edit market analyzers), then choose 'c' (Create a new market analyzer) to create a new market analyzer. Then choose a simple analyzer; and then choose two technical indicators. For the left technical indicator, choose MACD Difference. For the right indicator, choose MACD Signal Line. Choose weekly for the trading period type. Choose below-to-above for bullish crossover detection. When asked if you want to define an operator for the analyzer, say no. Select Buy as the signal type. Then pick a good name, such as "MACD Difference/Signal Cross-above <Buy>". For the bearish analyzer, which will detect when MACD Difference crosses below the MACD Signal, follow the same steps as for the bullish analyzer, except that you should choose above-to-below for the specification for crossover detection and Sell as the signal type. Example 3: MACD Difference/Signal Crossover and Stochastic %D Cross-below 35% This example defines an analyzer that uses the one created in Example 1, combined with the weekly MACD Difference/Signal crossover analyzer created in Example 2. From the main menu, choose 'm' (Edit market analyzers), then choose 'c' (Create a new market analyzer) to create a new market analyzer. Then choose 'c' (Compound), since you want a compound or composite analyzer. Next the system asks for the left component of the compound analyzer. Since what we want is the long-range signal - weekly MACD crossover - to precede the short range oversold signal, the long range signal should be set to occur before the short range signal. Since before-ness in time is conceptually to the left, the left analyzer will be the long range analyzer, the one whose signal is expected before the short range analyzer. So choose the "MACD Difference/Signal Cross-above <Buy>" that you created in Example 2, the bullish MACD signal. This is a weekly signal that will be triggered when a market's MACD Difference line crosses from below to above the MACD Signal line. The system will then ask for the right component. Choose the stochastic %D crossover analyzer that you created in Example 1. It will then ask if you want to specify a time extension to match events from the left analyzer that occur before events from the right analyzer. Since you want to know if the MACD crossover occurs before the stochastic oversold signal, you need to answer yes. Choose an appropriate amount of time for the left signal to be included if it occurs before the right signal. You can choose to enter days, months, and/or years. In my system, I chose 28 days. When you are finished selecting days/months/years, enter 'e' to end. It will then ask if you want to add a time extension to match events from the left analyzer that occur after events from the right analyzer. Since you don't want to know about MACD crossover events that occur after stochastic oversold events, say no. Next it asks if you want to specify an event type as target for the left analyzer's date and time. You don't need this here, so answer no. Select Buy as the signal type. Finally, select a good name for the compound indicator, such as: [MACD below/above crossover] / [Stochastic%D/35% oversold crossover] <Buy> This completes the creation of a market analyzer that creates buy signals when the weekly MACD Difference line crosses over the weekly MACD Signal line within the specified period of time before the Stochastic %D function crosses below the 35% line. If you wish to view the structure of the new analyzer, you can select 'v' (View a market analyzer) and then select the analyzer. You will probably want to also create a market analyzer for the reverse signal - weekly MACD Difference line crossing below the weekly MACD Signal line and stochastic %D crossing above the 65% line. Using the above example, you should find this a straightforward process. Note that if you decide you want to change the 35% crossover value of the stochastic oversold part of the compound indicator you created, you can do this by, from the main menu, selecting 'e' (Edit indicators), and then 'a' (Edit market-analysis indicators). Then select the MACD crossover / stochastic oversold signal you created. Then select "Line", which is the indicator that holds the 35% crossover value. Then select to edit the y-value of the Line. Enter a new value, such as 30. And enter 0 to exit this menu, and 0 again to exit the market analyzer selection menu. You can also, if you like, use this procedure to edit the MACD crossover values - for example, the n-values used for the moving averages for MACD Difference. Example 4: Volume Spike Detector This example shows the creation of a market analyzer that will produce a signal if the daily volume is more than x times greater than the exponential moving average of the volume for the previous day, where x is a (possibly fractional) value that you will choose. Before following this example to create the volume spike detector, you will need to make sure an "EMA of Volume" indicator has been created. If this indicator has not yet been created, follow the instructions in "Example 3: Exponential Moving Average of Volume", in creating_indicators. To get to the market analyzer creation menu, from the main menu, choose 'm' (Edit market analyzers), then choose 'c' (Create a new market analyzer) to create a new market analyzer. When creating a market analyzer, it often helps to think about what the analyzer needs to do and then draw a picture of it before creating it. We will do this in this example. First, since the analyzer will be processing only one stream of data - market volume - it will need to be both a simple (non-compound) analyzer and it will analyze one indicator, rather than two. Second, an operator will be needed for this analyzer, since the expression "volume > (previous period's EMA of volume) * x" needs to be evaluated for each period. Third, there is a complication that we want to compare one type of data, volume, with another type of data, EMA of volume. This will require the use of the FUNCTION_BASED_COMMAND, will allows the results of a function to be used in a composite operator, and will allow the needed comparison of volume with EMA of volume. This will require a composite operator that can be drawn as a tree: GT_OPERATOR / \ VOLUME MULTIPLICATION / \ FUNCTION_BASED_COMMAND NUMERIC_VALUE_COMMAND (x) | SETTABLE_OFFSET_COMMAND | BASIC_NUMERIC_COMMAND GT_OPERATOR (greater-than operator) provides the boolean greater than operation needed to express "volume > (previous period's EMA of volume) * x". VOLUME obtains the volume for the current period as GT_OPERATOR's left operand. MULTIPLICATION, GT_OPERATOR's right operand, provides the multiplication operation for "(previous period's EMA of volume) * x". MULTIPLICATION's left operand, FUNCTION_BASED_COMMAND, will use its operand to extract the EMA of volume value for the previous period. (FUNCTION_BASED_COMMAND will also use the EMA of Volume function, defined in the creating_indicators example, to obtain the EMA of volume values.) SETTABLE_OFFSET_COMMAND, FUNCTION_BASED_COMMAND's operand, will be used to access the previous period's data. SETTABLE_OFFSET_COMMAND will use its operand, BASIC_NUMERIC_COMMAND, to extract the EMA value. NUMERIC_VALUE_COMMAND, MULTIPLICATION's right operand, provides the x in "(previous period's EMA of volume) * x". Now that we have a picture of what we need to create, we can proceed to build our market analyzer. After choosing 'c' (Create a new market analyzer), as instructed above, the system asks whether we want a simple or compound analyzer. Since we determined that a simple analyzer is needed, choose 's' (Simple). Then choose the number of indicators the analyzer will use - One. The system then displays a list of the existing technical indicators. Since the type of data we want to analyze here is volume, which is a field of the raw market data, rather than a function, like moving average, we need to choose the "Market Data" indicator, which, unlike the other indicators, simply provides the market data for each period for analysis. The system then asks for the object to use as the market analyzer's root operator. Referring to the diagram of the operator hierarchy we drew above, we see that the root, or top level, operator will be the GT_OPERATOR. Select that operator. For the GT_OPERATOR's left operand, according to our diagram, select VOLUME. For the GT_OPERATOR's right operand select MULTIPLICATION. For MULTIPLICATION's left operand, according to the diagram, choose FUNCTION_BASED_COMMAND. The system will ask for an indicator for FUNCTION_BASED_COMMAND's input. Select the "EMA of Volume" indicator that you created in "Example 3: Exponential Moving Average of Volume" of the creating_indicators document. For FUNCTION_BASED_COMMAND's operand, choose SETTABLE_OFFSET_COMMAND. For SETTABLE_OFFSET_COMMAND's operand, select BASIC_NUMERIC_COMMAND. The system then asks for the left offset value for the SETTABLE_OFFSET_COMMAND. Since the SETTABLE_OFFSET_COMMAND is being used to access the previous period data (the volume EMA for the previous period) - one period to the left - enter 1. For MULTIPLICATION's right operand, according to the diagram, choose the NUMERIC_VALUE_COMMAND object. Its value will be the value you choose for x in the formula: "volume > (previous period's EMA of volume) * x". For example, if you want to detect if the current period's volume is 2.5 times greater than the volume EMA of the previous period, choose 2.5. The system then asks for the type of trading period. Since we want to check for volume spikes on a daily basis, choose "daily". For the signal type, choose Neutral, since a volume spike can indicate either a bullish or a bearish condition. Choose a good descriptive name for the analyzer, such as "Volume/Volume-EMA spike". This concludes the creation of the volume spike market analyzer. You may wish to test the analyzer by choosing a data file that has no existing volume spikes (or editing one so that it has no spikes) and then changing the volume field of one or more records of the file to be more than x times greater than the previous day's EMA of volume. Then you can run the market analysis, making sure that the start date for processing is set to a date that is before the dates of the records you changed; you should receive a signal for each of the records you changed. (Don't forget that you need to set up an event registrant - 'r' from the main menu - before you can receive signals for this new event.) Whenever you add a new market analyzer, you should do some testing on it to make sure that it does what you intended it to do. This is also true for new technical indicators. Example 5: [Slope of MACD, Slope of Slope of MACD] Trend Analyzers This set of market analyzers will use the indicator from Example 8 of the creating_indicators document, which combines the Slope of MACD Signal Line (SMSL) and the Slope of Slope of MACD Signal Line (SSMSL). The basic logic is that when both the SMSL and the SSMSL are above 0, the market is trending upward; and when they are both below 0, the market is trending downward. When one is above and one below 0, the market is either going sideways or it is not trending as strongly and is filtered out. (Since the SSMSL is more sensitive than the SMSL, when both indicators are above 0, the SSMSL will, when the trend starts to weaken, cross below 0 before the SMSL and thus cancel the Buy condition. This is, of course, mirrored for sell conditions. This helps filter out trades that are mediocre because the trend is not strong or is weakening.) The indicator from Example 8 (which I currently call in my system the [Slope of MACD, Slope of Slope of MACD] Trend) can be used to detect when the SMSL and the SSMSL are above or below 0: when the [Slope of MACD, Slope of Slope of MACD] Trend is positive (2), both the SMSL and the SSMSL are above 0. When it is negative (-2), both are below 0. And when it is 0, SMSL and SSMSL oppose each other - one is negative and one positive. We can use the fact that the [Slope of MACD, Slope of Slope of MACD] Trend goes from -2 to 2 or from 0 to 2 (Buy) and from 2 to -2 or from 0 to -2 (Sell) and from -2 to 0 or 2 to 0 (Sidelined) to create our signal by specifying that a buy signal is sent when the line crosses above 1 and a sell signal is sent when the line crosses below -1 and is sidelined when the line goes to 0. We will start with the Sell indicator - the [Slope of MACD, Slope of Slope of MACD] Trend crosses below -1. Select "Simple" for the analyzer type. Specify that it will use two technical indicators. For the left indicator pick [Slope of MACD, Slope of Slope of MACD] Trend (or whatever you named the indicator when you created it). For the right indicator pick Line. For Line's starting y value enter -1. For Line's slope enter 0 (it is horizontal). This is a long-term indicator (to be used in combination with a shorter- term indicator), so choose weekly as the period type (when your shorter- term indicator is daily). Select "above-to-below" for the crossover specification. (You want to know when the line crosses from above to below -1.) No operator is needed. The signal type should be Sell. Choose a good name, such as "[Slope of MACD, Slope of Slope of MACD] Downtrend". To create the buy version of the market analyzer, simply repeat the same steps as above, except choose 1 as Line's starting y value and "below-to-above" for the crossover specification and Buy as the signal type. We will need two market analyzers to signal when a market needs to be sidelined, one to detect when the indicator moves from 2 to 0 and one to detect when the indicator moves from -2 to 0. For the 2 to 0 analyzer, choose a simple analyzer. Choose two indicators. Select [Slope of MACD, Slope of Slope of MACD] Trend as the left indicator. Choose Line as the right indicator. For Line's y value select 1 and for the slope, choose 0. Select weekly as the trading period type. Select above-to-below for the crossover specification. You will need an operator to specify that when the line crosses below 1 it is greater than -1 (that is, it is 0). When asked if the operator should operate on the left or right function, select the left function. (We want to know if the [Slope of MACD, Slope of Slope of MACD] Trend, the left function, is greater than -1.) For the root operator, select GT_OPERATOR. For the left operand, choose BASIC_NUMERIC_COMMAND, which will obtain the value of the underlying function for the current period. For the right operand, select NUMERIC_VALUE_COMMAND and give it the value -1. Select Neutral as the signal type. Choose a good name, such as "[Slope of MACD, Slope of Slope of MACD] Sidelined - 2 to 0". For the -2 to 0 analyzer, follow the same steps as the 2 to 0 analyzer, but select -1 for the Line's y value, select below-to-above for the crossover detection, select LT_OPERATOR as the root operator, select 1 for the NUMERIC_VALUE_COMMAND's value, and choose an appropriate name. |
From: Jim C. <jt...@di...> - 2003-12-11 06:09:15
|
Hi Shah. > Thanks to Jim for his very prompt reply. After some > trials I found that the symbols of Indian stock > exchanges are also available at chart.yahoo.com. I had > to do some hard work to list all the symbols available > there but I've got them now. Did you succeed in changing the mas_httprc file such that you're able to use mas's -w web query option to obtain the stock data? Or are you now using a different method? If you did succeed, I'm sure the international mas users would appreciate hearing how you got this working. Just posting the mas_httprc file would probably be enough. > > Fetching the latest data from the yahoo site is quite > a problem inspite of a 2 Mbps leased line to the > internet. Often the server reports errors obtaining > the most recent data. In the absence of the latest EOD > data (a single record), the client does not chart out > anything and only displays an error. I'm not sure I understand the details of what you are saying here, but if you think this is a bug in mas, a bug report would be welcome: http://sourceforge.net/tracker/?group_id=6838&atid=106838 > Is there a way to run the mas_external_retrieve.pl > script as a stand alone fetching mechanism? This could > minimise the missing EOD data problem and, at the same > time, charting could work faster since it would not be > required to look for new data from the web when a > symbol chart has to be displayed. I tried running the Sounds like a reasonable solution. > script with all the arguments but it aborted with the > error message that 'qm' is missing. Is there a > workaround? I think it should be possible to do what you want to do here. First, qm is "quotemonster", a perl script which you can find at: http://www.xmlworks.com/quotemonster/ If you have trouble getting mas_external_retrieve.pl to work the way you want, you might try just using the qm script. I think you should be able to just create a script, driven by cron, that uses qm to obtain the latest data at the appropriate time. Jim |
From: Shah A. <sn_...@ya...> - 2003-12-05 19:11:06
|
Thanks to Jim for his very prompt reply. After some trials I found that the symbols of Indian stock exchanges are also available at chart.yahoo.com. I had to do some hard work to list all the symbols available there but I've got them now. Fetching the latest data from the yahoo site is quite a problem inspite of a 2 Mbps leased line to the internet. Often the server reports errors obtaining the most recent data. In the absence of the latest EOD data (a single record), the client does not chart out anything and only displays an error. Is there a way to run the mas_external_retrieve.pl script as a stand alone fetching mechanism? This could minimise the missing EOD data problem and, at the same time, charting could work faster since it would not be required to look for new data from the web when a symbol chart has to be displayed. I tried running the script with all the arguments but it aborted with the error message that 'qm' is missing. Is there a workaround? Regards, Shah Nawaz __________________________________ Do you Yahoo!? Free Pop-Up Blocker - Get it now http://companion.yahoo.com/ |