Site Administrator Swing Trader Data Scientist & DevOps
Manta, Ecuador
Experience: Advanced
Platform: Custom solution
Trading: Futures & Crypto
Posts: 49,994 since Jun 2009
Thanks: 32,462 given,
98,253
received
Hi guys,
Figured we could use a thread for this.
Here you can post links to any MultiCharts PM (Project Management) requests for bugs or feature requests that you want "bumped" or "voted up" by futures.io (formerly BMT) users.
Please --- do not vote up a request unless you really, really will benefit from it directly. This is only fair!
MultiCharts Project Management - Issue MC-34 - Add keyboard shortcuts for drawing tools
>>> This one is already confirmed for Beta 2, which means we are doing it. No need to upvote any further.
MultiCharts - Raising the Trading Standard.
Please send me a private message if you have any further questions about MultiCharts
I would like to see a feature where by in the EL code inputs: section, I could define some dividers between groups of inputs. It would make things a lot easier to read and use.
These dividers would then be displayed when altering the Study inputs and during modification of the inputs in the optimizing area. At the moment, I create dummy inputs ie System_Exits("== In Points/Pips ==") this is displayed OK when formatting signals but in the optimization section, you can't optimize a string so this line is left out. Thus losing all of my dividers.
I was delighted to see my request make it in Beta2, until i found out that the part about storing and accessing it in strategies / backtests as well as other vendors rougher than brokers had been left out.
Therefore please vote for the new one.
PS: Thanks for the tip about voting for ones own issue, did not realize that this was possible.
It is my aim to pyramid Silver at MT-Brokers but wish to keep individual control of all trades .
If MC would connect Read/Write with MT4´s including its MagicNumber we (I) would have a great soltution to buildt pyramids and control each Order one/one .
Also I wrote mailrequest to MC on this feature but was informed that "do not plan" and I could use external DLL from Web . I am not clever enough to use and connect "external DLL" not to speak of coding such "piece of code"
Trading: Shares & ETF at the US and EU , some MNQ & MES
Posts: 31 since Nov 2011
Thanks: 274 given,
14
received
The system I intend to trade is a long duration Martingale or inverse Martinggale using Silver CFD . It requires to handle each entry as one individual trade and all parameters being managed individually (Stoploss, TSL and other) . Ie , one order initially might be opened using a trading approach but once duration of trade increases its parametersetting (TSL) will change away from a trading approach towards an investmentapproach . At the same time , new orders could be entered to the market by the trading system and again trading rules will be applied when managing this new entry .
I would like to use EL for the system (that´s why I had bought MC) and have the features of ordermanagment, ordersync , ordermaintenance , orderhistory and so forth being performed by Metatrader and the CFD-Broker which provides me the service (Silver-CFD and connction to MT4) . This as I cannot see how to do this or similar with MC .
So this request having the following concept in mind : MT4 would send Ticks and current-state-of-orders to MC , MC would analyse and decide on new Sl-levels , Entries , Exits and instruct MT4 to adjust "specific order XYZ to a TSL of -15 PIP " and " Specific order ABC to a TSL of -200 PIP" .
There would be alternatives , such as trading SLV @ ARCA with IB-account . But I could not overcome all the hurdles I am facing in re to the ordermanagment as described above .
MultiCharts Project Management - Issue MC-320 - Changing candle / bar width independently of spacing
"When changing candle spacing on the chart, MC automatically adjusts the bar or candle width so as to display them in such a way that they are neither too close nor too far away. The problem is, however, that the user cannot then further enhance the display by manually adjusting the width of the bars. I would like to control not only how many bars show on my screen, but then how close those bars can be to each other."
This one juste drives me crazy I loveMultiCharts, but I am a discretionary visual (and aspiring ) trader. I need to be able to adjust the width of the candle and the space between them. Just due to that, as I do not need any indicator (except an EMA), I am seriously considering using another platform than Multicharts for trading, for instance the platform of the data feed or of the broker. They allow this simple feature (changing the space between the candles).
MultiCharts Project Management - Issue "MC-773 - price multiplier for symbol mapping (eSignal and IB) to allow trading
On several instruments, prices given by data feed eSignal are 100 times different than prices given by broker Interactive Brokers. The proposed feature is the possibility to apply a price multiplier when adding or mapping symbols between data feed and broker. It would allow to trade with IB when reading prices from eSignal.
Exemples of instruments, with recent prices:
Cotton @ ICU (NYBOT)
eSignal : CT #F, 86.61
IB : CT H2, 0.8661"
Without this problem solved, it is simply impossible to use Multicharts together with data feed eSignal and broker IB to trade some instruments.
Yes, I have spoken with MC and explained everything and they even saw the same thing when they remotely viewed my computer. They told me that you can't have chart data and bid/ask levels from IQFeed because it's not a broker. IQFeed can't be used by MC to calculate PnL or bid/ask, even though the status bar gives me the nearest bid/ask prices. I even asked IB if it was possible to use the exchange fee I am paying with IQFeed but IB said that was not possible and I would have to pay for a 2nd exchange fee to get real time data with IB. It is more advantageous for me to pay for real time data from IQFeed. You also can't use IQFeed as the data feed for the DOM.
The following user says Thank You to olobay for this post:
Hi,
I just generated a Issue to enhance the current replay mode.
Before the 8.7 Beta it was not possible to replay tick by tick in global mode.
Now it is, but there is still one feature missing.
I want to use MC for lets say training purposes, every sunday I do
training by replay a historic day in the market.
But it is right now not possible to get a realistic timeflow,
because it is only possible to make updates per second.
Therefore one update per second will lead to one tick per second two updates per second to two and so on.
Tick are coming on a irregular time therefore this way to replay will never lead to a realistic market simulation.
To solve that I initiated the following feature. MC-1391
If you are in the same situation, that you want to have a realistic replay market functionality in Multicharts.
Please vote for it.
As many guys know, I'm have been doing automated option trading in Multicharts. Please vote for my issue to help make Multicharts even more viable for automated options trading.
MC-1392 - Extracting Option Information from Quote Manager
Description and details
When you add an option symbol into quote manager, the quote manager stores many useful information regarding the option such as Contract Month, Contract Year, Expiration Date, Strike Price, Type - Call or Put, Symbol Root. Please allow us to extract information using powerlanguage. These fields are very useful and important for us doign automated option trading.
GetSymbolRootName- returns the symbol root name
GetContractMonth - returns the contract month
GetContractYear - returns the contract year
GetExpirationDate - returns the expiration date
GetStrikePrice - returns the strike price of option
GetOptionType - returns 0 for call and 1 put option
Description and details
I would like to see the Walk Forward Optimization Parameters for next Out of Sample period if incomplete. From what I understand the WFO report only shows complete periods.
For example your Walk forward might end 5/16/2013 the end of your data set is 6/30/2013. You might have a 300 day OOS or something that is larger than that time frame. So you will not get the current results. Even though the engine has all the information required to fill in up to the current date. As this will only occur at the last WFO window. So it already has enough bars back and historical data to optimize parameters.
So if we could see the currrent WFO window parameters and current trades taken, even if that window is not complete. That would be great.
I tried a work around but according to tech support, it is not possible to replicate that last window using the simple optimizer. since the WFO is so "complex" and it is by "design".
The example posted in images, the WFO ends at 9/20/2013 but our data set goes to 9/27/2013. the OOS in this period is 90 days. we have enough back data to generate parameters, and a current set of trades, and the rest of the results. However because the window did not complete all 90 days it does not appear in the results.
How to reproduce
Run a walkforward optimization where the end of the data set does not allow a complete OOS window to complete. you will always end up with a gap between the end date of your data and the last WFO window that completed.
The following user says Thank You to treydog999 for this post:
Walk forward optimization currently breaks up data into different IS/OSS segments. The trading strategy is only allowed access to the data in each segment. The approach causes many drawbacks and problems for strategy development.
When a strategy transits from one data segment to another, it must wait until it has enough data to calculate indicators before it can start trading. This results from not being able to access any data from the previous segment. Long look back periods, frequent recalibration, and small out of sample data window will all lower performance. As a result, many strategies will fail the walk forward test due to insufficient data rather than over fitting.
Ex. You’re running a simple moving average strategy with a look back period of 50 days. Your trading strategy must wait at least 50 days in each OSS segment before it can start trading.
Therefore, I would like to have the option to break IS/OSS into trading segments rather than data segments. This mean the trading strategy will have access to the all the historical data, but only allowed to trade on the dates of IS set being optimized on. Therefore, there is no longer a need to programmatically load different data segments. This version of WFO is much easier to program and implement.
The following user says Thank You to quantarb for this post:
Having seen the features of a new platform developed in Austria, some improvements for discretionary traders should be incorporated in Multicharts.
Those are,
1. the ability to have a stop which modifies the position size depending on its location relative to the corresponding entry order. In case one would like to entry with a limit order and the last significant low should be used as a location for the corresponding stop, the new type of order would adjust automatically the position size corresponding to the predefined maximum loss amount.
2. The ability to attach a exit order to the value delivered by an indicator or a hand drawn trendline.
3. Two types of stops
Hard Stop if touched a market order is executed immediatly
Soft Stop In case of an sell stop If touched during a bar without the closing of that bar below the stop level the stop is not executed.
The issue can be found at the following link MC-1527
The following user says Thank You to FB2012 for this post:
Description
For MC .Net, currently, we have to develop two sets of order codes if we want to use unmanaged orders in realtime. The first set is for backtesting (since unmanaged orders are not supported during backtesting) and another for realtime. Make unmanaged orders available for backtesting would greatly reduce our development time (managing both codes and coding it).
Description:
When placing an entry order with a stop loss order attached to it there should be an option to automatically calculate and set the position size based on a set risk amount. When you change the entry order level or the attached stop loss order level, position size changes accordingly based on the set risk amount.
This is a basic money management technique. If this routine would be automated, it would provide traders with more time to check the quality of their trades instead of on calculating the position size manually.
AgenaTrader has implemented this very well (with even more risk and moneymanagement options). Here is the link to their online help where their implementation of automated risk and money management is explained: AgenaTrader online help
Please, vote.
Without the first two, Multicharts' backtesting is just as good as any other one. Funny enough, AmiBroker is actually doing MC-1881. With first two included, MC becomes a bit different.
The rest of the below, would make MC a bit of a much better tool.
I suggest another great trading online bank.
They offer efficient support, low commission, great data feed and historical data, all financial instrument og the world, the best MTF exchange Equiduct to trade all european stocks, Eurotlx exchange to find all Bond in the world, great community and forum to exchange trading ideas.
They have huge numbers of trading platforms also in Java, etc, but no one into c#
They have already support for mc.easylanguage.
IF mc.net will be available from their API it's great.
In Multicharts Portfolio Backtester, one can set a strategy (say, Strategy 1) over a group of symbols A, another Strategy 2 over another set of symbols, etc. Each strategy applied to a unique set of symbols is independent from another, and each Strategy has its own set of parameters (and their intervals of values).
For multiple strategies set on different symbols, MC backtester number of loops (when executing the optimization) = product of all params across all strategies = Grossly unexpected and missleading! This is a fault, not a lack of optimization.
Take a Portfolio with 2 different strategies defined, each with their own signal and their own different instrument.
The problem I see is following:
Optimizing Strategy 1 running on Instrument 1, with the 4 parameters (Parameter 1A, 1B, 1C, 1D), we get 384 cycles when we run optimization only on this strategy (having Strategy 2 disabled)
Optimizing Strategy 2 running on Instrument 2, with the 4 parameters (Parameter 2A, 2B, 2C, 2D), we get 384 cycles when we run optimization only on this strategy (having Strategy 1 disabled)
Running the Optimization for both in paralel ... I'm surprised to see that total number of combinations is full mesh across all 8 parameters ... with a total number of combinations of 147456 ... Unexpected ... why?
- There is no way parameters 1A-D can influence performance on Strategy 2 ...
- There is no way parameters 2A-D can influence performance on Strategy 1 ...
Hence, I would have expected that:
1) Both strategies remain independent in their Optimization combinations.
2) Total number of combinations when optimizing both Strategies in paralel is: 384 + 384 ... it should be their sum, not their product ...
What do you guys say ... how would this "feature" be intuitive to you?
For me, in the above case as it stands now, it's just useless to have more than one Strategy running each on their own individual set of symbols ...
The only useful case is when having one Strategy running on one set of symbols ... that's it. You should not be allowed to have two at this moment.
Please add the connection to Bitfinex. https://www.bitfinex.com/
Bitfinex is the world's largest and most advanced bitcoin exchange that offers the most liquid order book in the world with all type of order like regolar exchange and professional API to connect all 3ed trading platform already created for trading futures,stocks,forex,etc.. in regulated markets (CME;EUREX,LME,etc...) with minimal slippage.
PRO
IT's designed like regulated markets (CME;EUREX,LME,..) to have the same experience to trade in regulated markets.
2.Bitfinex allows for users to trade with up to 3.3x leverage.
3.The margin funding market provides a way to earn interest on Euro, US Dollar, Bitcoin, Bcash, Ethereum, Iota, Litecoin, EOS, NEO, Dash, Zcash, Ethereum Classic, Monero, Sentiment, Ripple, OmiseGO, ETP, and Eidoo.
4.Order Types
Limit, Market, Stop, Trailing Stop, Fill or Kill, Iceberg Orders, One Cancels Other (OCO), Post Only, Hidden Order, TWAP
API
Bitfinex's API is designed to offer an easy and efficient way to build digital asset trading applications and tools: create your own charts, monitor and edit your orders and positions, track your trading history and wallets movements. Discover all the possibilities. https://docs.bitfinex.com/docs https://docs.bitfinex.com/docs/open-source-libraries https://docs.bitfinex.com/docs/api-access
The following user says Thank You to endystrike for this post:
StrategyHound is a TradingApp that allows you to use the powerful strategy optimization features in TradeStation to find trading opportunities by evaluating multiple strategies and intervals across multiple markets in a single integrated tool. With StrategyHound, you simply specify a list of symbols, along with the intervals and strategies of interest, and then click Run. It evaluates all possible permutations and presents you with an easy-to-read report that displays each permutation along with its associated fitness values such as Net Profit, Maximum Intraday Drawdown and Profit Factor. You can then sort by any fitness value to find the combination of symbols, intervals and strategies that provides the best results according to your own trading criteria.
there are two optimization method:
• Exhaustive – Select Exhaustive for a comprehensive method
that calculates all possible combinations of all strategy input
parameters within the range specified. Since all parameter
combinations are calculated, the exhaustive method
guarantees that the algorithm finds the optimal set of strategy
parameters of those compared.
• Genetic – Select Genetic for an optimization method based
on an evolutionary algorithm. Genetic optimizations are
preferable when the number of tests in the exhaustive method
might be too time consuming or processing intensive.
Running optimizations in shorter times will also allow
you to select wider range of parameters in your strategy
optimizations. Genetic optimizations do not calculate all
possible strategy parameter combinations but will use an
algorithm based on natural selection that will arrive to an
answer that is statistically significant.
Please give the possibility to check if the sum of all theorical position on an underlying matches with the broker position on that underlying.
For example, I have 6 systems on CLM9:
sys 1: long +1
sys 2: flat 0
sys 3: short -2
sys 4: long+4
sys 5: long +3
sys 6: long +1
at this point I'd have to manually do the sum and check if the sum is aligned with the broker position that in this case should be = 1+0-2+4+3+1 = +7