• If this is your first visit, you will have to register before you can post. To view messages, please scroll below and select the forum that you would like to visits. Questions? Be sure to check out the Forum FAQ.

Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

Custom serialization

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

    Custom serialization

    Hi

    Is it possible to override the default object serialization ? I looking into providing my own serialization strategies without the use of code attributes.

    #2
    Hello,

    Thank you for the post.

    You could certainly use C# to serialize an object as you want, you can also prevent properties from being serialized using the [XmlIgnore()] attribute on any properties that should not be serialized. A strategy by default will be serialized if it is left in the workspace as this is needed to reapply it later. You cannot directly disable this but you can disable any custom properties you create and then create logic to save as you wish.

    In this situation, you would likely need to wait for a later state like DataLoaded to set a boolean value to know the script was in fact started and applied, then later in State.Terminated check if the bool was set and then serialize your properties or objects in a way you want.


    I look forward to being of further assistance.
    JesseNinjaTrader Customer Service

    Comment


      #3
      >A strategy by default will be serialized if it is left in the workspace as this is needed to reapply it later

      this sounds like if I remove the strategy from the workspace it will not be serialized? does it make sense? and if yes would it be possible to custom deserialize it again and add it to the workspace next time is loaded?

      Comment


        #4
        Hello,

        If you remove the strategy, it would not reappear the next time you load the workspace or platform. There are no programmatic ways to remove or apply strategies at this time. If you are trying to have it reappear when you start the platform, it would not make sense to remove it.

        If you can provide some detail on what you are trying to do specifically, potentially I could recommend other ideas.

        If you are trying to create some form of a template loading system to your strategy you can, but the default way the platform handles strategies cannot be changed. You would instead need to use attribute tags to prevent items that should not be serialized from being saved. This is the [XmlIgnore] attribute.


        I look forward to being of further assistance.
        JesseNinjaTrader Customer Service

        Comment

        Latest Posts

        Collapse

        Topics Statistics Last Post
        Started by Vincere, Today, 01:59 AM
        0 responses
        4 views
        0 likes
        Last Post Vincere
        by Vincere
         
        Started by Davoone1, Yesterday, 07:28 PM
        1 response
        7 views
        0 likes
        Last Post NinjaTrader_ChrisSch  
        Started by Bobisam, Yesterday, 10:53 PM
        1 response
        6 views
        0 likes
        Last Post Bobisam
        by Bobisam
         
        Started by quantera, Yesterday, 05:38 PM
        0 responses
        5 views
        0 likes
        Last Post quantera  
        Started by ciro1963, Yesterday, 03:58 PM
        0 responses
        6 views
        0 likes
        Last Post ciro1963  
        Working...
        X