Back

Forex and stock holdings at the same time.

I was working on multiple charts, and attempted to create both a forex and equity chart with holdings in the same code. It doesn't seem to work. Very simple test.


public override void Initialize()
{
SetStartDate(2010, 05, 03);
SetEndDate(2015, 04, 30);
AddSecurity(SecurityType.Forex, "AUDUSD", Resolution.Minute);
AddSecurity(SecurityType.Equity, "MSFT", Resolution.Minute);
}

public void OnData(TradeBars data)
{
if (!Portfolio.Invested)
{
SetHoldings("AUDUSD", -0.75m);
SetHoldings("MSFT", 0.05m);
}
}


Seems to only contain Forex data. I've swapped the AddSecurity and SetHoldings in testing and it always seems to only come back with Forex data.
Update Backtest








I managed to work out how to resolve this is anyone is interested. I found an article on the university with some other charting examples which had both Equity and Forex listed.


if(stype[i] == "Equity")
{
AddSecurity(SecurityType.Equity, item.ToString(), Resolution.Minute,true,2,true);
}
else if(stype[i] == "Forex")
{
AddSecurity(SecurityType.Forex, item.ToString(), Resolution.Minute,true,200,true);
}


I seperate the type from my array of target trades, both need to be false,x,false for it work in the AddSecurity method. Also you need to add


if (Securities[item].Exchange.ExchangeOpen == false) return;


Into the OnData area, because the Equity doesnt trade the same time frames as Forex.

Hope this helps anyone else joining the community.

Cheers
Peter Harley
0

Check University's "How Do I Ensure There Is Always Data?", its shows how to add as many symbols as you want.
0

Yep glad you figured it out! Beat me to it :) The Portfolio.Invested flag would be flipped at midnight when ordering the fx, and MSFT markets wouldn't be open yet.
0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Another option is the following:foreach(var symbol in Securities.Keys)
{
if (!Portfolio[symbol].Invested)
SetHoldings(symbol, 1/(decimal)Securities.Count);
}
0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Update Backtest





0

The material on this website is provided for informational purposes only and does not constitute an offer to sell, a solicitation to buy, or a recommendation or endorsement for any security or strategy, nor does it constitute an offer to provide investment advisory services by QuantConnect. In addition, the material offers no opinion with respect to the suitability of any security or specific investment. QuantConnect makes no guarantees as to the accuracy or completeness of the views expressed in the website. The views are subject to change, and may have become unreliable for various reasons, including changes in market conditions or economic circumstances. All investments involve risk, including loss of principal. You should consult with an investment professional before making any investment decisions.


Loading...

This discussion is closed