Login Page - Create Account

Support Board


Date/Time: Thu, 28 Mar 2024 12:19:11 +0000



all trade signals dissappear after 1025 to 1028 upgrade

View Count: 1565

[2013-10-01 22:48:54]
hairyMug - Posts: 31
Using an ACSIL function I had over 25 entry/exit signals in v 1025 after upgrade zero. Just to make sure I recompiled my solution and created the chartbook from scratch. All setting are the same but NO Signals... and all the sub-graphs did show... This is all in "simulation" mode; Bar-based Back-test.
Date Time Of Last Edit: 2013-10-01 22:55:23
[2013-10-02 08:40:58]
Sierra Chart Engineering - Posts: 104368
You have to debug this. Refer to the documentation here:
http://www.sierrachart.com/index.php?l=doc/doc_ACSILTrading.html

Have a look at Trade >> Trade Service Log to see if you see any relevant messages.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2013-10-03 02:46:24]
hairyMug - Posts: 31
I am familiar with debugging and have been doing it for over 30 years but I have never been told by a software vendor to debug THEIR program after THEY made an update!!!
This is a first!
If the only thing I did was update to the next version and something does not work, I really don't think that I need to debug my code...
[2013-10-03 03:15:49]
Sierra Chart Engineering - Posts: 104368
Yes you do, because you need to see why it is there are no order signals. We are referring to debugging your own code. Obviously not our own. We do not know what the problem is and it is your code that you control.

Otherwise, how can we help you? It is not helpful to us if something has changed that we are not aware of and your code is not working as expected, and then you tell us it is not working without looking into it and determining more precisely why from the information that you have through logging and function returns values and other debugging methods. Please be reasonable. We do not know what the problem is. You will help yourself tremendously by looking into the problem and seeing what the issue is. And then tell us more specifically what is going wrong. Otherwise, we do not know. Otherwise, we are just making guesses out of millions of possibilities. Does that make sense? Of course not.

Without help from you, it is like an inexperienced user telling us they open a chart and it doesn't work. What specifically doesn't work and what Data or Trading service are you using and what type of chart did you open. Not to be critical here. But customers need to understand our perspective.

Furthermore, nothing has changed which would cause a problem to our knowledge. We just performed a bar based back test using one of the trading systems provided with Sierra Chart and it works fine. So you need to determine what is going wrong. ACSIL trading functions are well documented, and you need to check the return value from the Order Action functions and see what the problem is. The documentation explains all of this in detail. This is why we linked to it.

Sometimes we are too helpful on this Support Board. However, our original answer is correct and there is nothing further to offer from us until we get further information.
Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2013-10-03 07:52:11
[2013-10-14 02:34:58]
hairyMug - Posts: 31
OK, I have found out that the symbol naming has changed...
Whereas the name returned by "PositionData.Symbol" used to return "[SIM]ADM", it now returns "[Sim]ADM"...

AND it seems that the scope of "sc.MaximumPositionAllowed" has changed; The previous versions allowed changes to this anywhere in code but the new version limits this to being set in the "default" section. My code did not set this in the "default" section but in a "shares" subroutine, so when I upgraded, no signals were shown since my setting "sc.MaximumPositionAllowed" did not work as before. After moving it to the "default" section, signals then started showing.
>> This seems to have something to do with the "sc.AutoLoop=0;" setting...

That said, You have a very good support system and I cannot find another tool in which I can program my auto-trading code BUT I have only evenings & weekends, so I do get annoyed when my code stops working...

[2013-10-14 03:35:54]
Sierra Chart Engineering - Posts: 104368
Whereas the name returned by "PositionData.Symbol" used to return "[SIM]ADM", it now returns "[Sim]ADM"...
So are you doing a comparison that is case-sensitive?

AND it seems that the scope of "sc.MaximumPositionAllowed" has changed; The previous versions allowed changes to this anywhere in code but the new version limits this to being set in the "default" section
No changes have been made to the processing of sc.MaximumPositionAllowed. We had a check now and you can set that outside of the sc.SetDefaults code block.

We are going to do some more checking on this later today.

Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
[2013-10-15 02:52:33]
Sierra Chart Engineering - Posts: 104368
We have verified that you can set the value of "sc.MaximumPositionAllowed" anywhere. This code demonstrates this:



SCSFExport scsf_ACSILTradingTest(SCStudyInterfaceRef sc)
{
  //Define references to the Subgraphs and Inputs for easy reference
  SCSubgraphRef BuyEntrySubgraph = sc.Subgraph[0];
  SCSubgraphRef BuyExitSubgraph = sc.Subgraph[1];
  SCSubgraphRef SellEntrySubgraph = sc.Subgraph[2];
  SCSubgraphRef SellExitSubgraph = sc.Subgraph[3];

  SCInputRef Enabled = sc.Input[0];


  if (sc.SetDefaults)
  {
    // Set the study configuration and defaults.

    sc.GraphName = "Trading Test";

    BuyEntrySubgraph.Name = "Buy Entry";
    BuyEntrySubgraph.DrawStyle = DRAWSTYLE_ARROWUP;
    BuyEntrySubgraph.PrimaryColor = RGB(0, 255, 0);
    BuyEntrySubgraph.LineWidth = 2;
    BuyEntrySubgraph.DrawZeros = false;

    BuyExitSubgraph.Name = "Buy Exit";
    BuyExitSubgraph.DrawStyle = DRAWSTYLE_ARROWDOWN;
    BuyExitSubgraph.PrimaryColor = RGB(255, 128, 128);
    BuyExitSubgraph.LineWidth = 2;
    BuyExitSubgraph.DrawZeros = false;

    SellEntrySubgraph.Name = "Sell Entry";
    SellEntrySubgraph.DrawStyle = DRAWSTYLE_ARROWDOWN;
    SellEntrySubgraph.PrimaryColor = RGB(255, 0, 0);
    SellEntrySubgraph.LineWidth = 2;
    SellEntrySubgraph.DrawZeros = false;

    SellExitSubgraph.Name = "Sell Exit";
    SellExitSubgraph.DrawStyle = DRAWSTYLE_ARROWUP;
    SellExitSubgraph.PrimaryColor = RGB(128, 255, 128);
    SellExitSubgraph.LineWidth = 2;
    SellExitSubgraph.DrawZeros = false;

    Enabled.Name = "Enabled";
    Enabled.SetYesNo(0);
    Enabled. SetDescription("This input enables the study and allows it to function. Otherwise, it does nothing.");


    // This is false by default. Orders will go to the simulation system always.
    sc.SendOrdersToTradeService = false;

    sc.AllowMultipleEntriesInSameDirection = true;
    sc.MaximumPositionAllowed = 0;

    sc.SupportReversals = false;
    sc.AllowOppositeEntryWithOpposingPositionOrOrders = true;

    // This variable controls whether to use or not use attached orders that are configured on the Trade Window for the chart.
    sc.SupportAttachedOrdersForTrading = false;

    //This variable controls whether to use the "Use Attached Orders" setting on the Trade Window for the chart
    sc.UseGUIAttachedOrderSetting =false;

    sc.CancelAllOrdersOnEntriesAndReversals= false;
    sc.AllowEntryWithWorkingOrders = true;
    sc.CancelAllWorkingOrdersOnExit = true;
    sc.AllowOnlyOneTradePerBar = false;

    //This needs to be set to true when a trading study uses trading functions.
    sc.MaintainTradeStatisticsAndTradesData = true;

    sc.AutoLoop = true;
    sc.GraphRegion = 0;

    // During development set this flag to 1, so the DLL can be modified. When development is completed, set it to 0 to improve performance.
    sc.FreeDLL = 0;

    //sc.OnExternalDataImmediateStudyCall= true;//Increases CPU load. Use with caution.

    return;
  }


  //These must be outside of the sc.SetDefaults code block
  sc.SupportTradingScaleIn = 1;
  sc.SupportTradingScaleOut = 0;


  if (!Enabled.GetYesNo())
    return;

  if ( sc.LastCallToFunction )
    return;//nothing to do


  // Run the below code only on the last bar
  if (sc.Index < sc.ArraySize-1)
    return;

  sc.MaximumPositionAllowed += 1;

  // Create an s_SCNewOrder object.
  s_SCNewOrder NewOrder;
  NewOrder.OrderQuantity = 1;
  NewOrder.OrderType = SCT_MARKET;


  int Result =sc.BuyEntry(NewOrder);
  if (Result > 0) //If there has been a successful order entry
  {
    BuyEntrySubgraph[sc.Index] = sc.Low[sc.Index];

  }
}

Sierra Chart Support - Engineering Level

Your definitive source for support. Other responses are from users. Try to keep your questions brief and to the point. Be aware of support policy:
https://www.sierrachart.com/index.php?l=PostingInformation.php#GeneralInformation

For the most reliable, advanced, and zero cost futures order routing, *change* to the Teton service:
Sierra Chart Teton Futures Order Routing
Date Time Of Last Edit: 2013-10-15 02:53:24

To post a message in this thread, you need to log in with your Sierra Chart account:

Login

Login Page - Create Account