Back

Log end of day statistics?

I would like to log some end of day statistics, specifically total fees. I tried overriding both of the following methods, but neither seems to get run at the end of the day.


public override void OnEndOfDay()
{
foreach (var h in Portfolio)
{
Log(string.Format("{0} - Total fees today: ${1}", h.Key, h.Value.TotalFees));
}
}

public override void OnEndOfAlgorithm()
{
foreach (var h in Portfolio)
{
Log(string.Format("{0} - Total fees today: ${1}", h.Key, h.Value.TotalFees));
}
}
Update Backtest








Thanks @PeterWicks, digging into it now. I'll post an example project with it working early tomorrow. Its fairly late here :)

If you didn't intend to share the algorithm let me know and I'll detach it from the forum post. That is a lot of work you've put in so far :) I'm glad you're getting such good use out of QC.
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.


Yes, please detach that... My mistake :)
0

@Peter -- please see example code with EOD messages streaming to console.

If any messages aren't streaming for you it might be because your messages are identical and repeating (we block identical debug messages to prevent flooding), or that you've exceeded the maximum debug messages. Debug messages are very slow (synchronous web request) so logs are best.

We limit the Log at 2000 lines at the moment (and this will be reduced soon per data providers requests) - so any EOD logs after 2000 lines will be lost (this is mentioned on line 2000 of your log).
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.


Does OnEndOfDay require RunMode.Series?
1

It should work either way; I checked the code and re-ran a test of the above - cloned with RunMode.Parallel and it fired the EOD debug messages. They are no longer in order but it should still trigger them.
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