OmniTrader Professional Forum
-
OmniLanguage Discussion
Base OT2009 Formulas |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | I have started converting all the base OT indicators into OmniLanguage scripts. This is mainly intended as an example reference for helping you learn how to use OmniLanguage. Some of you have asked in the past to get the formulas so you can tweak the calculations so here they are =). I am working on this in my down time and I will post more as I have the chance to write them. Some indicators may not make it to the list any time soon if at all due to the complexity of the formulas (I.E. OT Pivots points). Some scripts are dependent on other scripts attached here. If you get compile error messages that say some variable name with the prefix of OTind or OTSind is not declared then please check here for the script you need. These scripts were written in OT2009 and may not work in OT08 due to the difference in parsers. Click Here to download the zip file containing all indicator script files. (2-8-23 Link Fixed) *Update 3-2-09* All of indicators are done with the exception of the following indicators V,O,H,L,C Price And HighestHigh/LowestLow indicators - Thought these were too basic to add Commodity Selection Index (Futures) - Margin is require to calculate. Unable to get this value in OL. Correlation Normalized COT Index (Futures) - We do not have access to COT data in OL COT Net Longs (Futures) - We do not have access to COT data in OL Seasonality (Futures) - We do not have access to seasonality data in OL Linear Regression Line - This indicator cheats and we are unable to code cheating indicators in OL. Details of this indicator can be found at the following thread. http://www.omnitrader.com/omnitrader/proforum/thread-view.asp?threadid=2086&posts=1 ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() | |
^ Top | ||
Xaiver Comelli![]() Posts: 28 Joined: 11/15/2008 Location: Raleigh, NC ![]() | Many many thanks for such a great undertaken.... ...still I'll push the envelops :) :) :) and do encourage you to make a effort (might be a big one) and provide the formula for the OT PivotPoint. I had the formula provided by members of this forum (a great one!), which I use on a regular basis; however, it has some very minor flaws which could be solved if you provide OT formula... Thanks again! | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Matthew - What a great Christmas present! Thank you!!! Both for educational (coding) purposes, and for educational (understanding indicators) and for development starting-points, this is GREAT. I, too, would consider the Pivot Points code to be incredibly useful, particularly if it could be adapted for use as function calls with other indicators. I presume we are talking about OT's short/med/long pivots ... not floor-pivots. Please keep these on your list, even if you don't do them first! Thanks! | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Downloads would be a lot easier if you also provided a zip file with all of them ... we could extract any that we want. Thanks! | |
^ Top | ||
Manfred![]() Posts: 210 Joined: 4/2/2006 Location: South Africa ![]() | Matthew, thanks for such great work and as JD says a fab xmas present :-) Have been missing such a wonderful resource for a long while. Of course ya guessed it - the one you were thinking of skipping is one of the main one's I'd like to see. Pivot points! i.e. like the default Pivots(7) indicator with a return of the current Pivot level value for use in systems code. Ideally, for a current project what I'm looking for is to determine the last pivot swing high and pivot swing low level to base other calcs such as fibs off. Thanks | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Hi, Matthew - Manfred's post made me realize that I had not been very specific in my request re Pivot Points code. Since you've been posting code that duplicates the indicators, I presume that a "pivot" indicator you might create would be along the same lines ... ie it would calculate and draw all the same lines that we see when we select short, medium or long pivots in the Patterns box. From that code, we could extract whatever we needed to implement things of a specific nature. It's hard to predict exactly what all those needs may be. Some people might just want to know about the last validated PP, some might also want the most recent one not-yet-confirmed. Some might want the last two high or last two low. Some might want the slopes of the connecting lines. Some might want the bars (xaxis), some the values (yaxis), some both. So, rather than providing just some of these items, or trying to guess what they all might be, I suggest that you simply provide code that generates the S/M/L lines (all of them) on the chart, and leave it to us to parse out the parts we want. The only "special" variant of that which might be useful ... and might be a natural byproduct of the code anyway, would be to provide a parametric Pivots call ... not just ShortPivots(), MedPivots(), LongPivots(), but allow for one parameter that scales smoothly between/beyond those three canned periods. If you can provide the general code, I'll be happy to volunteer to parse it out into a bunch of variants for specifics that other users request, to save you the time (presuming that will in fact help :~) Thanks again for undertaking this project! Jim | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Hi, Matthew: If you get stumped on the LR indicators, I can probably help. The only one that I'd consider "useless" is the one that draws a straight line across the entire pane ... I never figured out what good it would be. Let me know if you'd like me to work up the code for you. Thanks a lot for doing this! Any chance of Pivot code appearing within the next month? | |
^ Top | ||
01439![]() Posts: 63 Joined: 5/24/2006 ![]() | Matthew, Thanks for the ZIP file you loaded today. Happy New Year! | |
^ Top | ||
TP![]() Posts: 125 Joined: 3/17/2006 Location: KC ![]() | WOW Matthew. And double WOW as Tom H would say. Great idea and great customer service. Happy new year to you. TP | |
^ Top | ||
Bill Kelemen![]() Posts: 65 Joined: 12/22/2006 Location: Riverisde, CT ![]() | Matthew, Thanks a lot for putting this together. Happy New Year Bill | |
^ Top | ||
Steven S![]() Posts: 10 Joined: 1/3/2009 ![]() | Thanks Matthew for the formulas. This is great for a novice system creator. This is probably a stupid question but how do you add H,L,C,O to an indicator for instance SMA. Instead of the SMA being created on close it will be calculated on the H - SMA (H,10)? Could this be done to any indicator that calculates itself on the close? Thanks in advance. Steven | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Steven, Please see the following FAQ. http://www.omnitrader.com/omnitrader/proforum/thread-view.asp?threadid=1683&posts=1 Also you can take a look at the OTindMACD indicator for an example. You will see that the signal line is created by using a EMA of the MACD line. | |
^ Top | ||
Drew![]() Posts: 509 Joined: 6/13/2008 ![]() | Matthew, Great thread. I, amongst all other OT users, greatly appreciate your contribution. Apologies if asking too much, but do you think you could also provide some formulas for the stops? | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Most systems and/or stops are based off indicators. Once the Indicators are completed I can start working on systems and stops. | |
^ Top | ||
Drew![]() Posts: 509 Joined: 6/13/2008 ![]() | thanks Matthew | |
^ Top | ||
Steven S![]() Posts: 10 Joined: 1/3/2009 ![]() | Thanks Matthew. I will give it a try. | |
^ Top | ||
Steven S![]() Posts: 10 Joined: 1/3/2009 ![]() | Matthew, I have been trying to create the ability to put in H,L,O options within a moving average and have digested what you wrote in the OT2009 reply. I understand how to do SMA(H,10) when creating a scan in omniscan but still don't seem to be able to do it in omni language when writing an indicator. I noticed in the OTindMovingAverageEnvelope description there is IF Then statements showing H,L,O,C parameters in the settings window. How do I write parameters into SMA omnilanguage for H,L,O,C so that only that parameter is being used in the calculation of the SMA? I hope I have written this correctly. Thanks. Steven | |
^ Top | ||
Manfred![]() Posts: 210 Joined: 4/2/2006 Location: South Africa ![]() | Hi Steven S, Butting in here so maybe my answer is too simplistic but if you're asking how to get one of OHL or C into your Omilanguage code assuming one is using built in functions like the SMA(H,10) you mention. Well in your example SMA(H,10) - the H in there is the H of OHLC so if you say wanted SMA(C,10) you could, also of course SMA(O,10) or SMA(L,10) or really whatever you wished to SMA in this case. e.g. you could do something like Dim A, B As single A = (H+L)/2 B = SMA(A,10) for example. OTOH if youre asking how to modify Matthew's code to say use only one of OHL or C in the SMA calcs well do something like this: (Caveat I never tested it so may have missed something below) Also note you will also need to have OTSindMAEnvelopeUpper indicator in the OT VBA/indicator folder for this code to work. 'cut and paste below #Indicator '#PARAM "HighPriceField", 2, 1, 4 '#PARAM "LowPriceField", 2, 1, 4 'or delete the above 2 lines #PARAM "Periods", 9 #PARAM "PercentAbove", 1 #PARAM "PercentBelow", 1 #PARAM "Offset", 0, 0, 50 Dim fHighPrice, fHighMA, fLowPrice, fLowMA, fUpperBand, fLowerBand as Single 'Now delete the following If then statements 'If HighPriceField = 1 Then ' fHighPrice = O 'ElseIf HighPriceField = 2 Then ' fHighPrice = H 'ElseIf HighPriceField = 3 Then ' fHighPrice = L 'ElseIf HighPriceField = 4 Then ' fHighPrice = C 'End If 'now add this line instead fHighPrice = H 'you could also change the above H to any of OHLC price i.e. whatever input you want to keep constant - as opposed to #param user changeable. 'Now delete the following If then statements 'If LowPriceField = 1 Then ' fLowPrice = O 'ElseIf LowPriceField = 2 Then ' fLowPrice = H 'ElseIf LowPriceField = 3 Then ' fLowPrice = L 'ElseIf LowPriceField = 4 Then ' fLowPrice = C 'End If 'now add this line instead fHighPrice = L 'you could also change the above L to any of OHLC price i.e. whatever input you want to keep constant - as opposed to #param user changeable. fHighMA = SMA(fHighPrice, Periods) fLowMA = SMA(fLowPrice, Periods) If Bar >= Periods - 1 Then fHighMA *= 1 + PercentAbove/100 fLowMA *= 1 - PercentBelow/100 End If fUpperBand = OTSindMAEnvelopeUpper(HighPriceField, Periods, PercentAbove)[Offset] fLowerBand = OTSindMAEnvelopeLower(LowPriceField, Periods, PercentBelow)[Offset] PlotPrice("Upper Band", fUpperBand) PlotPrice("Lower Band", fLowerBand) Return 0 '---- you can cut and paste the above and it *should* compile OK 'HTH, Cheers | |
^ Top | ||
Steven S![]() Posts: 10 Joined: 1/3/2009 ![]() | Manfred, Thanks for the assistance. What I was trying to do originally was rewrite Matthew's SMA code to be able to use H,L,O,or C as the value that price is calculating from instead of only being able to use close (which is the default). I am a novice when it comes to writing code, so could I put in Dim A,B as single A = H B = SMA(A,"periods"), or is there a way to add a parameter with H,L,O,orC as the choices in his code or would I have to write a new indicator that uses Matthews SMA in it? I hope I am making sense? Thanks. Steven | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | If you are changing the SMA the only line you need to change is fSMA = Sum(Periods)/Periods More specifically the Sum function. Just like with most other function calls it uses the close price as the default value. As pointed out in the FAQ I mentioned earlier most function calls have an 'overload' or a second way to call it. This overload will allow you to specify the values to use for the calculations. So you could change it to fSMA = Sum(H, Periods)/Periods or fSMA = Sum(L, Periods)/Periods or fSMA = Sum(O, Periods)/Periods If you wanted to make it fancy you could add a parameter that allows you to dynamically choose the value. #Indicator #PARAM "Periods", 14 #PARAM "PriceField", 2, 1, 4 Dim fPrice, fSMA as Single If PriceField = 1 Then fPrice = O ElseIf PriceField = 2 Then fPrice = H ElseIf PriceField = 3 Then fPrice = L ElseIf PriceField = 4 Then fPrice = C End If fSMA = Sum(fPrice, Periods)/Periods PlotPrice("SMA", fSMA) Return fSMA | |
^ Top | ||
Steven S![]() Posts: 10 Joined: 1/3/2009 ![]() | Matthew, Thanks for the help. I went with the fancier plan, and it worked great. Is there a programming book for novices that you might suggest to help me in my learning curve ie. "VBA for dummies". Steven | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Any beginners guide to VB or VBA should do the trick. This should provide both enough logical programming concepts as well as VB syntax examples of how to structure your logic to give you the jump start in to writing in OmniLanguage. OmniLanguage is a purposely simplistic language to reduce the amount of VB syntax you need to learn. I would focus more heavily on logic structure rather than syntax. As far as VB syntax the only real concepts you need to know is.. What is a variable and how do I create one for the type I need? What is a variable type? What are If...Then...Else statements? What are For...Next loops And Do While Loop and how do I use them? More importantly how do avoid getting stuck in one? Most everything else is a pseudo language which is OmniLanguage. If you wanted to take it to the next level you could learn... What is an array and how are they used? What is the difference between a sub and a function? What is a method overload? From there you will understand a little more what is happening behind the scenes. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Matthew.... you make me scared to update to omnitrader 2009. I have wriiten many of my own formula, and if you are having trouble... just imagine how much time I will have to waste. Any suggestions? | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Jaxin: No need to fear - MG is here! :=D Seriously - differences are small. 09's adherance to VB is better than 08's. If you've already programmed on the 08 version, then you've learned 99% of the necessary stuff. The only main diff is variable carryover - you don't need the A=A[1] statements any more. Yes, you may need to update some code, but if you do it all at once, you get the hang of things quicker. If it's code you downloaded, then someone else prob already fixed it. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Jim, I have 102 formula's to change.... and don't even know where to start... nor do I have the time and patience. | |
^ Top | ||
THOMAS HELGET![]() Posts: 610 Joined: 3/22/2006 Location: BALDWINSVILLE, NEW YORK ![]() | Jaxin: I upgraded to OT2009 and while at first the task of script modification appeared daunting only a few scripts had to be actually modified. And, within those scripts the changes were fairly consistent throughout. That is, once you corrected a problem in one script most likely you would encounter the same problem in another thus facilitating the script modification process. Tom Helget | |
^ Top | ||
Oladele![]() Posts: 2 Joined: 3/18/2008 Location: London, UK ![]() | Please could you help write the formulae for GMMA Oscillator. I have changed it from 9 to 3 because when the blue line crosses red in GMMA OSC 3, PRICE CHANGES | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | I cant expose the code for purchased plug-ins. Only the base indicators that come pre-installed with OT. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | How long did it take you to do 102 formula's? Where do you start? I get the impression that Nirvana continually chages their program and to hell with the traders. They appear to be using us as guinea pigs. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Tom... forgive my frustration. I have spent 2 years writing and testing formulae for Omnitrader. I have eventually found 4 strategies that work exceptionally well.... especially if I run them at 11:30am. My profits in this BEAR market are so far in excess of 16% in trading DECEMBER and JANUARY. By the way... yesterday my strategy told me to BUY WFI on the TSX at $23.00 It is today trading at $24.50. Want some more buy tips? | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | I should have mentioned that I DO NOT SHORT THE MARKET. I am a BULL, and only BUY. | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Our goal is to always release cutting edge technology with features you cant find elsewhere. We will at times see ways to improve the software and make it more robust, accurate, and/or beneficial to all traders and we want to implement those changes. We strive to make the changes as low impact as possible but some times it is unavoidable. In OT2008 the parser was functional but had way too many restrictions, limitations, and too many 'band-aids' due to the fundamental design of it. The VBA parser was completely redesigned from the ground up in OT2009. In OT2009 many of the limitations of complex math formulas, nested parentheses, nest Iff statements, ect (Check the OT08 guide book for the other limitations) are corrected. The design and flow of logic is more in line with the true syntax of its base language (which is Visual Basic). That being said the only things that should have an impact on your scripts when upgrading are posted in the OT2009 Parser Changes thread. http://www.omnitrader.com/omnitrader/proforum/thread-view.asp?threadid=2018&posts=1 | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Matthew... Thank you, I have looked at the page you suggested.... but if I read you correctly, there can still be FURTHER changes. I must then ask what is the point of me updating formulae when another change by you, in the near future will mean another ton of work in me updating my formulae once again? And of course the question arises, when will the 'updating' be finalized? In the year 2010 or later? | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Due to the overhaul I seriously doubt the parser will be changing anytime soon. The parser itself is very robust now and will support everything a trader will need to code what they want in OmniLanguage. I strongly believe the framework we have now will the foundation we build upon for a long time to come. If I am assuming correctly the changes you are referring to is with the stop logic. This change has nothing to due with the parser but rather the connection layer between OmniLanguage and OmniTrader. This will always be changing, ideally only to add new functions, indicators, and the like. In this case however we needed to add the ability for a user to set the internal exit level on the first trading bar. The change we implemented had some unforeseen side effects. You can read about this in that thread and the work around for the issue. This is an open issue that will be corrected. At which point you should be able to remove the work-around and stops will support everything we need for automated trading. | |
^ Top | ||
Drew![]() Posts: 509 Joined: 6/13/2008 ![]() | Matthew, Do you think we'll get some updated documentation on OL? I've mentioned this countless times, and sent emails, but still nothing. | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | I have proofed through the whole manual and made several corrections, additions, and notes and gave it to our documentation reviser. I dont think I missed anything but just let me know. | |
^ Top | ||
Drew![]() Posts: 509 Joined: 6/13/2008 ![]() | Thanks Matthew. I hope its a bit more thorough in terms of function calls, etc. Is that something that we will have soon, or already have? | |
^ Top | ||
THOMAS HELGET![]() Posts: 610 Joined: 3/22/2006 Location: BALDWINSVILLE, NEW YORK ![]() | Jaxin: Only about twenty or so of my scripts actually required modification. The new parser identified all the problems. Some were as easy as using only one parameter where two were in use before. As I said, once I rolled up my sleeves and went to work there were maybe only half a dozen or so real modifications that had to be handled in multiple scripts. Once I got the hang of the first problem correcting all similar problems was easy once you knew what to look for. I understand your frustration as I was ready to give up myself on the project. But I am glad I stuck to it performing it in small increments until the task was done. Don't try to take it on all at once or you surely will give up. Slow and steady does it! Tom Helget | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Jaxin - It's worth the effort to rework your code. After 40 years of programming, I still find that when I do "fixes" for reason A, I end up seeing other things during the process that can be improved. There is NO such thing as perfect code, or a perfect programming environment, or a stable platform. In the world of coding, AND of trading, life IS change. If you anticipate it, it's a fun challenge. If you try to build a rigid, static paradigm, then troubles come quickly, from one place or another. Please forgive the sermon - but a positive mental attitude is incredibly important to sustaining successful trading. If you haven't already, I highly recommend books by Van Tharp (Trade Your Way to Financial Freedom) and Mark Douglas (Trading in the Zone). OT can at times an in places be a bit rough around the edges, BUT the innovative, interlinked capabilities it offers is a fair offset for that. You might find the following link helpful: http://www.omnitrader.com/omnitrader/support/OT2004/forum/thread-view.asp?threadid=4079 I hope this helps! | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Jim and Thomas. I have thought long and hard about what both of you have written, and have come to the following decision. I still use Windows XP..... simply because windows VISTA had too many problems when it was first introduced, and later, when I read the critics on it, realised that it was not that much better than Windows XP. The same applies to Omnitrader 2009. So far I have not read one report, and from a customer, and not an employee or semi-employee that has told me that their profitability has improved. Remember.... we are i the business of MAKING MONEY via TRADING.... not playing at computer programming. I have a strategy that is working, and working exceptionally well. Can I afford to take the risk on upgrading to a program (and even to a rewrite of formula) when the one I am presently using is so profitable? A year ago I challenged Gianlucca to show me that the NN strategies could beat the one I developed. He could not. Since then I have improved my strategy by over 315%. I haven't heard a word from Gianlucca. I shall upgrade to Omnitrader 2009 after I have read more critics on it and ALL the problems it has are corrected. I shall NOT update my subscription, because I am in Canada, and look at Canadian stocks and Mutual funds, which Nirvana doesn't handle. To pay $400 odd would be a waste. Thanks | |
^ Top | ||
Condorll![]() Posts: 94 Joined: 9/20/2007 Location: Canonsburg, PA ![]() | we are i the business of MAKING MONEY via TRADING.... not playing at computer programming because I am in Canada, and look at Canadian stocks and Mutual funds ............ Jaxin, I too am in the business of Making (additional) Money via Trading and as such don't really care where the stocks and/or Mutual funds are located. I appreciate OT 2009, especially the new Seasonality module introduced for 2009, as a visual confirmation to the N Club Strategies I use. I have found this module (unavailable in OT 2008 I believe) a valuable addition to my arsenal. Regards | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Condor..... thanks.... I appreciate your answer and your boost of Omnitrader 2009. I mentioned Canadian stocks because I understand that Omnipilot cannot be used with them. So... I cannot use Omnipilot. But don't misunderstand me... I think Omnitrader 2008 is GREAT.... I have been an Omnitrader fan since the early 1990's and have always remained one, but there is a limit to everything. I have an excellent money making system.... and I always look to improve it. However, I simply don't have the time or patience to rewrite formulas no matter how much simpler they will be. Thanks again | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Jaxin - I understand your reluctance to do a rewrite, if your time is at a premium, and if you are already highly profitable (way way beyond the average, according to your numbers). The old saying "if it ain't broke, don't fix it" certainly applies, for your system. Of course, for the OT parser in general, it "were broke", and "they dun fixed it". Since that fix will remain in place for all future years (versus going backwards), then by locking in on OT2008 now, you're not providing for much flexibility 2-4 years from now, when 08 is no longer actively supported, and when many new addons will likely not work with it. So be it, if you feel that your system will remain profitable, unchanged, for years ... or if you feel that OT2008's stability and feature-set is sufficient to stand the test of time. I know people that still use versions of TradeStation dating back to the late 90's. One question ... if you had the ability to "throw a switch" and have all your code work in OT2009 (and therefore, most likely, in future OT's), would you choose to do so? If yes, would you be willing to share a very limited portion of your extra-ordinary profits, to pay for the switch to be thrown? There are probably several people out here (myself included) who are willing to do contract programming, and are willing to sign non-disclosure and non-compete agreements. It may be that you could have your cake and eat it too. I suspect the cost of doing the conversions would be pretty low. Just a thot to consider ... | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Jim, I have already talked with Jaxin via private message. My offer to update all his code for him if he purchased the upgrade was respectfully declined. Jaxin, OmniPilot does not care what you trade. OmniPilot itself is not limited to only US symbols. OmniPilot just automates what you do inside OmniTrader. If in OmniTrader you have a system that fires signals, you can use Pilot to alert you of the signals via e-mail (or text message). If you can place trades to your broker via Trade Plan within OT. You can use Pilot to start the trade plan for you (instead of you manually clicking the trade button) whenever there is a new signal. Bottom line - OmniPilot simply drives OmniTrader. If you can do it in OT...you can most likely have OmniPilot automate it. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Matthew, I was under the impression that Omnipilot was for LIVE data supplied only by Nirvana Systems. Am I correct in interpreting what you have said that I can use Omnipilot with AIQ live data? If so, how would I do this? Jack | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | OmniPilot is not restricted to only streaming live data. One of the built in scripts is call EOD Trader and is intended to be used with an EOD profile. OmniPilot doesn't care where your data comes from, just that you are able to get it within OT. Pilot really does nothing more than programmatically clicks OmniTraders buttons on your behalf based on some event. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | Thank you.... I was under the wrong impression. Question... how wouldmI then look at LIVE AIQ data with Omnitrader? I reckon I could find this out myself with a little reading, but would appreciate an answer. | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | Provided you have streaming data from AIQ all you need to do in OT is open a Real Time profile. You can create a new RT profile by clicking File | New. Give your profile and name, choose you profile type (assuming you want Stocks) and choose Real Time. Funds do not have streaming data. All fund data is updated by the data provider sometime after the close. | |
^ Top | ||
jaxin![]() Posts: 222 Joined: 3/28/2006 Location: Vancouver ![]() | OK.... done that.... but how do I identify the AIQ realtime data? | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | I may have spoke before I had all of my information. Looking in the manual I see that AIQ is user data. User data can only be used for end of day. For real time data you need to use esignal, quote.com, IQfeed as a data provider. I believe E-signal has the most exchanges including Canadian stocks and funds and has reliable data but they are also the most expensive. IQfeed has got a lot better data than they used to and seems to pretty reliable as well and I believe them to be the cheapest. However I dont know what exchanges they have. | |
^ Top | ||
Barry Cohen![]() Posts: 2309 Joined: 1/1/1900 ![]() | IQ Feed & eSignal are very similar now. As of this time I don't know if eSignal data has anything that IQ Feed doesn't save for eSignal's own charting software. I do know that IQ Feed is cheaper & I believe their support department is almost as good as ours. :) | |
^ Top | ||
Super Trader![]() Posts: 63 Joined: 12/12/2007 ![]() | Thanks ... Mr.Matthew Coooool Very useful Best Regards .. | |
^ Top | ||
THOMAS HELGET![]() Posts: 610 Joined: 3/22/2006 Location: BALDWINSVILLE, NEW YORK ![]() | Matthew: Thanks for all your hard work on the OmniScripts at the top of this thread. Is it also possible that you might share the code for the Valid Trend Line Break (VTL-B) system or is this a proprietary secret? Thanks, Tom Helget | |
^ Top | ||
Matthew Greenslet![]() Posts: 2077 Joined: 2/27/2006 ![]() | VTL-B is part of a plug-in package...or ARM with a club membership...I forget which. But either way it is propitiatory. Sorry. | |
^ Top | ||
JB![]() Posts: 434 Joined: 6/6/2006 ![]() | Matthew I have wanted to modify the sto c system for an idea that I have. I have down loaded your excellent work and reproduced the sto indicator with modification to install the parameters for the variable high and low levels. I am wondering how to plot the signals of the sto c system. it seems to be a crossover between an indicator and a sysstem in the Nirvana implimetation? If you have coded into O/l the Sto C system could you send me a copy many thanks as I may be able to work out from there how to proceed John B | |
^ Top | ||
julesrulesny![]() Posts: 498 Joined: 8/28/2009 Location: NYC ![]() | I just wanted to add my own grattitude for doing this... Truly awesome and gave me a HUGE jumpstart in my programming skills! Many thanks Matt !!! | |
^ Top | ||
Joseph Lupo![]() Posts: 158 Joined: 3/20/2006 ![]() | Matt, I couldn't find it in the forum but could you please post the code for the correlation indicator? (CORR) Thanks Joe | |
^ Top | ||
julesrulesny![]() Posts: 498 Joined: 8/28/2009 Location: NYC ![]() | Matthew, I know you are busy - but what are the chances of getting such formulas for 'Measurments' in OLang for VT? I know you did so much for making these indicators available to us for OT/VT Pro.. And it surely did help my learning curve in teaching me how to create my own indicators/sytems, etc.. So, I was wondering if there was anyway that formuals for the maps given to us in VT, can be given to us? Example: Trend with Changes in Trend, Net Percent (Session), Trend with Breakouts, etc.. All these maps requires various Transforms/Measurments like Acceleration, Trend, Trend(s), Trend(m), Trend(L), Net Percent(bar), Net Percent(Session), Net Percent(Change), Volatility Breakout, Volume Change and so on and so on... It would be awesome if the OLang was provided or could be provided to us for these transforms as it would enable us a starting point. Especially for those like myself who aren't that great with creating measurements, furthered by indicators, systems.. Thanks, Marc | |
^ Top | ||
mgerber![]() Posts: 61 Joined: 3/30/2006 Location: Issaquah, WA ![]() | Mind if I ask which four that you find that work for you? Thanks for the consideration. --Mark | |
^ Top | ||
mgerber![]() Posts: 61 Joined: 3/30/2006 Location: Issaquah, WA ![]() | First of all, THANK YOU VERY MUCH(!!) for this wonderful work. As new guy to OmniLanguage in OT2010, it is a big help. I do find some of the indicators are not compiling, though, and those that do not return the same error message: Build (Global): succeeded. FileName: ; Line: 0; Char: 0; Error Number: -2; Microsoft (R) Visual Basic Compiler version 8.0.50727.4927 for Microsoft (R) .NET Framework version 2.0.50727.4952 Copyright (c) Microsoft Corporation. All rights reserved. How can I correct this common compile error? Thanks, Mark | |
^ Top | ||
Gary Rickle![]() Posts: 40 Joined: 3/7/2006 Location: Cape Canaveral, Fl ![]() | Tried to compile Stochastics and got the following message... Line: 11; Char: 0; Error Number: BC30451; Name 'K_LongPeriods' is not declared. Line 11 is.... ' * D_Periods Can anyone tell me why I'm getting that message? Thanks, G | |
^ Top | ||
Sarel Snyman![]() | Hi Matthew Have you tried to code in omnilanguage an indicator called StochMACD. As I understand this changes MACD from open ended to closed by applying stochastic formula to it. I am useless at code so wouldn't know where to start. I would like to plot 2 or 3 different timeframe MACD's on this basis over each other. That way the best possible entry would be where all 3 cross ip or down - or so i think! Here is a formula I found for StochMACD StochMACD=100*(MACD()-LLV(MACD(),14))/(HHV(MACD(),14)-LLV(MACD(),14)); Plot(StochMACD,"StochMACD",1,1); Thanks Sarel | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Matt's no longer with Nirvana ... a tremendous loss ... but, I'll endeavor to help you. Btw ... this thread is intended for just the "canned" OT formulas, which Matt provided in such a gracious fashion ... see the first post in the thread. I replied to your other post about this, here ... HTTP://www.omnitrader.com/omnitrader/proforum/thread-view.asp?threadid=3494 | |
^ Top | ||
Juan![]() | Does Nirvana have the base formulas for the stop indicators found "Trade Plans"? Specifically, I'm looking for the Omnilanguage code for Fixed Stop Loss and Trailing Profit Stop. Thanks. | |
^ Top | ||
Jim Dean![]() Posts: 3433 Joined: 3/13/2006 Location: L'ville, GA ![]() | Send me a private message with your name and email address and I will provide you that information with complete documentation. Nirvana does not have it. | |
^ Top | ||
Hey Ed!![]() Posts: 144 Joined: 6/4/2007 Location: New York, NY ![]() | Thank you so much for doing this compilation. It's a wonderful learning experience for someone new to OmniLanguage. Your clear presentation of the programming loop constructs using the primitives is a perfect preliminary to using the shortcut OmniTrader Parameter Indicators themselves. So far I've coded two custom indicators one each way. These are a Dual CCI and a Dual Adaptive CCI. | |
^ Top | ||
Xaiver Comelli![]() Posts: 28 Joined: 11/15/2008 Location: Raleigh, NC ![]() | it seems the location to these scripts is broken and no longer downloadable... any new link? | |
^ Top | ||
SteveL![]() Posts: 133 Joined: 2/15/2007 Location: Boulder, CO ![]() | Xaiver, Go to the very first post in this thread. The last link in that first post is the ZIP of all the indicators. It works. http://www.omnitrader.com/currentclients/proforum/get-attachment.asp?attachmentid=3175 |