Jump to content

Welcome to the new Traders Laboratory! Please bear with us as we finish the migration over the next few days. If you find any issues, want to leave feedback, get in touch with us, or offer suggestions please post to the Support forum here.

  • Welcome Guests

    Welcome. You are currently viewing the forum as a guest which does not give you access to all the great features at Traders Laboratory such as interacting with members, access to all forums, downloading attachments, and eligibility to win free giveaways. Registration is fast, simple and absolutely free. Create a FREE Traders Laboratory account here.

cowcool

Best Strategy Backtesting Software

Recommended Posts

SIUYA, thanks a lot pal for confirming, this is really a shocker for me. I am using latest beta but situation is same, i cant back-test on value basis, if other experience MC users confirm this then it will be lot of help. By the way whats your latest platform ?

Share this post


Link to post
Share on other sites
Why not use 2 data streams one to generate signals and a single tick one (of the same instrument) to generate trades?

 

My one friend suggested that in other forum. Suppose, data series 1 is of 1min tf which is for generating trades, data series2 is of 15min tf for generating signals, now if signal appear true on data stream2 ex. High > new high of the day - and i command MC to buy limit order on next bar on data stream 1 which is of 1 min tf but, next bar didnt take out the new high of the day but 12th one min bar took the NHD then logic will be flawed & MC will through an error. :pullhair: :hammer:

Share this post


Link to post
Share on other sites

What I was thinking was something like

 

if c data2 > h data2 then trigger= true else trigger = false; // data 2 is a 5 minute bar for example

if (currententries=0) and trigger then buy next bar at open; //this will buy on the next tick if data 1 is a 1 tick bar

 

I don't really use strategies myself but can't see why something like this would not work.

Share this post


Link to post
Share on other sites

my platform - for what I require the best system I have found that is great for all aspects of back testing for a retail person is trading blox. It works for me. Possibly a little expensive upfront, but from all accounts it seems fantastic. I have no association with them and have only recently downloaded and learning the system myself, but from all accounts of other users and what I have seen its fantastic. It is built in the same way I built some complex excel based backtesters.... only faster, thats why i relented and bought it. It is not a charting system or for live auto trading however, and MC has its own advantages in this aspect.

I would suggest checking out their website/ user forum and seeing if it suits.

To date, I am not 100% sure if what you require is able to be done in this yet, but I am 90% sure its possible. Personally I test individual ideas, and then combine them - more so to test ideas work as opposed to running a systemised portfolio.

eg; they have in their manual

 

How do I enter an order with a stop?

 

Use a broker order like the following:

 

 

· broker.EnterLongOnOpen( exitStop ) - Buy on the open with an optional stop price

 

· broker.EnterShortOnOpen( exitStop ) - Sell on the open with an optional stop price

 

· broker.EnterLongOnStop( entryStop, exitStop ) - Buy on a stop with an optional exit stop price

 

· broker.EnterShortOnStop( entryStop, exitStop ) - Sell on a stop with an optional exit stop price

 

· broker.EnterLongAtLimit( entryLimit, exitStop ) - Buy at the limit with an optional stop price

 

· broker.EnterShortAtLimit( entryLimit, exitStop ) - Sell at the given limit with an optional stop price

Edited by SIUYA

Share this post


Link to post
Share on other sites
sorry if this has been said before - or if it seems obvious....

In order to be able to trade intra day you must have the correct intra day data. (Ideally down to the tick data)

Unfortunately the systems dont have a measure to be able to buy within a bar unless you can further subdivide the bar you are working on into smaller time frame bars.

you need to be able to see the sequence of trades that make up the bar. ie; which came first the high, or the low.

(I used MC for a while and initially missed this point myself when first looking at it). The only other way to do it is via a fudge.

 

with MultiCharts,

you can use 2 data streams to backtest your strategy.

 

e.g.

use a 5 min chart with a tick data stream

 

use a 5min chart as you would normally do,

so that all the signals are based on the 5 min bar intervals.

with precision backtesting, MultiCharts can read your tick data

and execute trades based on the tick price actions within that 5 min bar.

 

you should read up on the above manual links for more detail and instruction.

Share this post


Link to post
Share on other sites
with MultiCharts,

you can use 2 data streams to backtest your strategy.

 

e.g.

use a 5 min chart with a tick data stream

 

use a 5min chart as you would normally do,

so that all the signals are based on the 5 min bar intervals.

with precision backtesting, MultiCharts can read your tick data

and execute trades based on the tick price actions within that 5 min bar.

 

you should read up on the above manual links for more detail and instruction.

 

yes gone through this sir, and yet my question is same, how it helps me to code how to execute order at specific custom defined value in backtester? tried to use blow fish's approach but it gave wrong entry and exit points. Can some one make real code and post, like this is the way to do this, otherwise started believing MC has this obvious flaw for backtesting intraday methods, there might be some work around but that basic function suppose to be there for easy & frequent use .

Share this post


Link to post
Share on other sites
yes gone through this sir, and yet my question is same, how it helps me to code how to execute order at specific custom defined value in backtester? tried to use blow fish's approach but it gave wrong entry and exit points. Can some one make real code and post, like this is the way to do this, otherwise started believing MC has this obvious flaw for backtesting intraday methods, there might be some work around but that basic function suppose to be there for easy & frequent use .

 

ok, so you recognized the problem is not with MultiCharts, but with your programming code?

 

There are lots of coding resources at the Multicharts website.

Share this post


Link to post
Share on other sites
ok, so you recognized the problem is not with MultiCharts, but with your programming code?

 

There are lots of coding resources at the Multicharts website.

 

well its not that i am research shy person n looking for spoon feeding, i am just looking for direct answer how its coded in MC order type at specific value ? the simplest arrangement with any software, if MC doesnt provide then i believe partial problem is with MC not in coding, furthermore my question is still not answered here & dont see whats the point fingerpointing here n there.

Share this post


Link to post
Share on other sites
well its not that i am research shy person n looking for spoon feeding, i am just looking for direct answer how its coded in MC order type at specific value ? the simplest arrangement with any software, if MC doesnt provide then i believe partial problem is with MC not in coding, furthermore my question is still not answered here & dont see whats the point fingerpointing here n there.

 

 

Jabbing in a software thread with a coding problem is not going to lead to an answer you are looking for.

 

If you want specific help,

you should start a new thread,

with your "problem" clearly and logically laid out.

 

Blaming your inability on MultiCharts will not motivate anybody to enlighten you.

 

 

note: EasyLanguage has been around a lot longer than you.

Share this post


Link to post
Share on other sites

Oh just remember that i suppose to post here about the solution about my issue, its bar magnifier in multichart backtestin properties which need to be enable & you get your entry NEAR ABOUT YOUR STOP VALUE but not exact at the given stop value if you are unlucky enough to not to have tick data for past few years( just few mb to GB of data ) within the bar even if you say buy next bar at market in easy lang. Sorry for my ignorance as i just shifted to easy lang from investor rt, getting use to the platform now.

Edited by alex_laxya

Share this post


Link to post
Share on other sites

By the way this is biggest draw back of easy lang when it comes to back test scalp strategies which some times enter and exit within one minute in high beta stocks. You must have tick data to back test & which is very impractical if you intend to test on 5 years of data( which is must for robust backtesting). Quantitative strategies are difficult to test for sure. Nothing against any platform, still MC is way better than investor rt, since it provides lot of freedom, at the end of day its part of the package. Talking in perspective of back testing issuers nothing about coding.

Share this post


Link to post
Share on other sites
By the way this is biggest draw back of easy lang when it comes to back test scalp strategies which some times enter and exit within one minute in high beta stocks. You must have tick data to back test & which is very impractical if you intend to test on 5 years of data( which is must for robust backtesting). Quantitative strategies are difficult to test for sure. Nothing against any platform, still MC is way better than investor rt, since it provides lot of freedom, at the end of day its part of the package. Talking in perspective of back testing issuers nothing about coding.

 

let me get this straight...

 

you want to have accurate backtesting... so you got yourself some tick data,

good boy.

 

now you are complaining that it is taking you toooooo frick'n loooong

to run your 5 years of tick data? LOL

 

Maybe I can loan you my Cray?

 

I bet you are going to complain about the trouble it takes to count the millions of dollars

when your backtest became successful.

 

 

keep your chin up... you might get there, eventually. ;-)

Share this post


Link to post
Share on other sites

just a few notes on backtesting:

 

1. Backtesting is not real. Don't treat it as gospel.

 

2. Understanding the mechanics (spells: L-I-M-I-T-A-T-I-O-N) of backtesting will save you lots of headache.

 

3. different software handle backtesting differently... don't assume.

 

4. backtesting is to test a trading hypothesis, not validating trading codes.

for code validation, you need live testing.

(or forward testing at the minimal)

 

5. ideally you should test your "system' on at least 3 "business" cycles of data.

ie: 3 up moves and 3 down moves.

for some systems, that means 3 bull runs and 3 bear runs,

for other systems, it might mean 3 years of data.

for scalping, that means 3 intraday oscillations.

 

 

Backtest is fun !

Enjoy it to the fullest.

Edited by Tams

Share this post


Link to post
Share on other sites

great summary on backtesting TAMS.

it is not as easy (as some folks make it out to be).

One of the other key elements to backtesting is making sure you have clean accurate data. This in itself is an extremely important and large job. (Hint: relying on purchased or especially free data is not all there is).

If you are testing on inaccurate data, then you may as well be testing using random data.

(which still has some value in itself)

Share this post


Link to post
Share on other sites
let me get this straight...

 

you want to have accurate backtesting... so you got yourself some tick data,

good boy.

 

now you are complaining that it is taking you toooooo frick'n loooong

to run your 5 years of tick data? LOL

 

Maybe I can loan you my Cray?

 

I bet you are going to complain about the trouble it takes to count the millions of dollars

when your backtest became successful.

 

 

keep your chin up... you might get there, eventually. ;-)

 

well i dont have any intensions discussing about personal stuff, whether i would get there or not or may be i am already there, platform is new for me thats why i raised few basic questions ( & yes problem wasn't about coding ) that doesnt necessarily mean i am a noob who might need basic stuff about what back-testing is, if one really tested 5 years tick data then only can realise how impractical it is or what i am talking about, thats the issue arguing with paper traders lol yes we are mature enough not to rely much on back testing results even after using montecarlo sim & other advance approach.. rofl..its funny when some one stubborn about platform only cuz he/she spend few agonising years to learn the language, i dont have issues learnin c# now if platform doesnt fits in to my skim of things, i wont curve fit the platform by adding extra sleepage only 'cuz it fail to give me accurate entry, have a chill pill sit back & relax like a good kid, i am not talking about scalp alone, quant models cant be back-tested as simple as few statistical arbitrage say pair trading in MultiChart/TS. P. S. No further replies from my end as my issue has been solved.

Edited by alex_laxya

Share this post


Link to post
Share on other sites

oooh you want to do quant... brilliant

C# is powerful and flexible, it can do many things EasyLanguage cannot, (and vise versa)

I am sure C# is good for you.

Take a picture of your hair before you start.

Edited by Tams

Share this post


Link to post
Share on other sites

I've spent the last 6 months with a student version of Matlab trying to learn it and have finally given up and just going with R.

Matlab seems to update too frequently that the online examples of certain things are just a huge cluster fuck. You end up spending more time debugging examples than learning anything concept wise.

R just always seems to work, and if something is broken it points you to how to fix it.

Python has some cool stuff but I don't see why you would bother learning Python over R for this game unless you are already a very good Python programmer.

Even if you are a good programmer in a more traditional language, the value of something like R is that the algorithms have already been gone over with a fine tooth comb for you. Probably 10 guys who know the language better than you and 10 guys who are vastly better at algorithm analysis than you have already added their 2 cents for free. If you find something then you can just spend your time debugging the translation of the algorithm itself to a more efficient execution strategy, not that R doesn't have some nice parallel processing features though for brute force analysis. Good luck starting from nothing with a C variant..

As far as retail backtesting software, its all utter garbage. Its not rational to expect it to ever get better than garbage if aimed at retail trading given the failure rate. The focus will always be on the lowest common denominator in order to stay in business.

Edited by natedredd10

Share this post


Link to post
Share on other sites
I've spent the last 6 months with a student version of Matlab trying to learn it and have finally given up and just going with R.

Matlab seems to update too frequently that the online examples of certain things are just a huge cluster fuck. You end up spending more time debugging examples than learning anything concept wise.

R just always seems to work, and if something is broken it points you to how to fix it.

Python has some cool stuff but I don't see why you would bother learning Python over R for this game unless you are already a very good Python programmer.

Even if you are a good programmer in a more traditional language, the value of something like R is that the algorithms have already been gone over with a fine tooth comb for you. Probably 10 guys who know the language better than you and 10 guys who are vastly better at algorithm analysis than you have already added their 2 cents for free. If you find something then you can just spend your time debugging the translation of the algorithm itself to a more efficient execution strategy, not that R doesn't have some nice parallel processing features though for brute force analysis. Good luck starting from nothing with a C variant..

As far as retail backtesting software, its all utter garbage. Its not rational to expect it to ever get better than garbage if aimed at retail trading given the failure rate. The focus will always be on the lowest common denominator in order to stay in business.

 

Very rightly said. Heard lot of good things about R from few of my friends.

Share this post


Link to post
Share on other sites

I personally, use Tradestation. I have used it to backtest strategies and it is crap for that. It is not accurate. Fills, spreads, all pie in the sky. What you can use it for well is to manually backtest and then forward test. I am sure there are many other programs that work well. I think the key is historical data for your backtest. If you want to go back years then you need to find something that will run an auto strategy, but I don't think TS is the answer there.

For me I like to test 6 months back and the forward test live for a month. If it is working I will know by then. I can factor in news and other events, just as I would in the market.

Share this post


Link to post
Share on other sites
I personally, use Tradestation. I have used it to backtest strategies and it is crap for that. It is not accurate. Fills, spreads, all pie in the sky. What you can use it for well is to manually backtest and then forward test. I am sure there are many other programs that work well. I think the key is historical data for your backtest. If you want to go back years then you need to find something that will run an auto strategy, but I don't think TS is the answer there.

For me I like to test 6 months back and the forward test live for a month. If it is working I will know by then. I can factor in news and other events, just as I would in the market.

 

have you heard of GIGO ?

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.


  • Topics

  • Posts

    • Can I use this EA on my Hotforex platform? How do I do that? 
    • Why are Market Wizard's insults and humiliations tolerated with impunity whereas our replies are sistematically banned? Just curious.
    • Bitcoin (BTC) Consolidates As Bears And Bulls Tussle Above $9,400 Support Key Resistance Zones: $10,000, $11,000, $12,000 Key Support Zones: $7, 000, $6, 000, $5,000 BTC/USD Long-term Trend: Ranging Bitcoin has failed to break above $10,400 overhead resistance. The bulls made two unsuccessful attempts at the resistance. In the recent one, the bears took the price to a low of $9,290 and then pulled back above $9,400. In the interim, the price is fluctuating above $9,400 and approaching the high of $9,800. As the bulls have failed to push above the overhead resistance, the pair may commence a range movement. Nonetheless, it is anticipated that if the bears break below the $9,400 support, selling pressure may resume. Meanwhile, BTC may continue the range-bound movement. BTC/USD – Daily Chart Daily Chart Indicators Reading: After the downward move of Bitcoin, the Relative Strength Index has also fallen to level 52. This simply means the coin is above the centerline 50. In other words, BTC is in an uptrend and it is likely to rise. Price broke the support line of the ascending channel. The uptrend will be in proper perspective only when the bulls break into the ascending channel. BTC/USD Medium-term Trend: Bearish On the 4- hour chart, Bitcoin now trades between $9,400 and $10,200 after the first breakdown at the $10,400 overhead resistance. The bulls tested the resistance at $10,200 twice , before the downward move. The large bearish candlesticks tested a low of $9,290. However, the small body candlesticks that follow are called indecisive candlesticks. BTC/USD – 4 Hour Chart 4-hour Chart Indicators Reading Presently, BTC is trading above a 25% range of the daily stochastic. That is the coin is in the bullish trend zone. The 21-day SMA and the 50-day SMA are sloping horizontally indicating a sideways trend. General Outlook for Bitcoin (BTC) From every indication, if the bulls fail to push above the overhead resistance, the price action in October and November will repeat itself. For the past three days, BTC is still fluctuating above $9,400. Instrument: BTC/USD Order: Sell Entry price: $9,700 Stop: $9,900 Target: $8,400 Note: Learn2Trade.com is not a financial advisor. Do your research before investing your funds in any financial asset or presented product or event. We are not responsible for your investing results Source: https://learn2.trade 
    • The Sharp Recovery In EURJPY Lose Momentum, Falters Beneath The Level At 121.00 EURJPY Price Analysis – February  21 The single European currency rose 88 basis points or 0.73% against the Japanese yen in the previous session. After two consecutive sessions showing strong growth, EURJPY is now losing some momentum amid JPY bulls. Key Levels Resistance Levels: 122.37, 122.87, 121.00 Support Levels: 119.99, 117.08, 115.83 EURJPY Long term Trend: Ranging The EURJPY rebound from the level of 118.46 continues to advance from the previous session, but today it has stalled. Super-speed acceleration claims that a decline from 122.87 level could have ended in three waves to 118.46 level. However, the support level formed by the intersection of the moving average of 5 and 13 at 119.90 level can support the exchange rate during the trading session on Friday, while greater advance can continue from the level of 115.83. EURJPY Short term Trend: Ranging From an analysis of the 4-hour time frame, the intraday bias is now on the rise for a resistance level of 121.15 at first. The breakthrough will be aimed at 122.87 high levels. On the other hand, a breakdown of the secondary support levels of 119.99 could change the bias towards lower testing to retest the low level of 118.46 instead. Instrument: EURJPY Order: Sell Entry price: 121.00 Stop: 119.66 Target: 121.47 Note: Learn2Trade.com is not a financial advisor. Do your research before investing your funds in any financial asset or presented product or event. We are not responsible for your investing results Source: https://learn2.trade 
    • What makes InstaForex a good choice is that it is a reliable binary options trading platform so the trader would not have to dread anything if he decides to choose this platform.  They offer a 24/7 consultancy support. The exclusive online support facilitates the trader to get all the help that he has been looking for so far. This means that if the trader has any questions he can put them up ready to reach a solution to his problems. InstaForex provides trading binary options on currency pairs, cryptocurrency pairs, metals, and CFDs on shares.   InstaForex Broker 2.000$ Forex / Binary Options No Deposit Bonus! Crypto Trading Available! https://binaryoptionsfree.eu/review/instaforex-broker-2-000-forex-binary-options-no-deposit-bonus/
×
×
  • Create New...

Important Information

By using this site, you agree to our Terms of Use.