Login Page - Create Account

Support Board


Date/Time: Wed, 22 Apr 2026 23:47:50 +0000



ACSIL BuyEntry always returns -1 when connected to Rithmic/Bulenox in Trade Simulation Mod

View Count: 34

[2026-04-22 20:39:57]
maikoroji - Posts: 2
Setup:

Sierra Chart connected to Rithmic through Bulenox prop firm
Trade Simulation Mode ON (showing [Sim] in title bar)
Chart Replay in Accurate Trading System Back Test Mode
MNQM6.CME 1 Min chart
SC version 2899

Problem:
Every call to sc.BuyEntry() or sc.SellEntry() returns -1. No orders appear in Trade Orders Window. No entries in Trade Service Log. Trade Account Monitor shows only one account: BX51408-04 (live Bulenox account).
What we tried:

TradeAccount set to "Sim1" → returns -1
TradeAccount set to "BX51408-04" → returns -1
TradeAccount left empty → returns -1
sc.SendOrdersToTradeService = 0 and = 1 → both return -1
sc.IsFullRecalculation guard → in place
Auto Trading Enabled Global and Chart → both checked
Chart Trade Mode ON → checked
Tried minimal test study with just one sc.BuyEntry call → still -1
Cannot create new Sim account manually → "New Trade Account" option is greyed out in Trade Account Monitor

Key observation:
Trade Account Monitor does not show any Sim account. Only BX51408-04 appears. We believe the issue is that Bulenox/Rithmic does not provide a standard Sim account, and SC internal sim accounts cannot be created manually in this configuration.
Question:
What is the correct Trade Account name to use in ACSIL when trading in simulation mode while connected to Rithmic through Bulenox? Is there a specific configuration required to enable ACSIL automated trading in replay/backtest mode with this broker?
[2026-04-22 21:30:09]
John - SC Support - Posts: 45738
When you have "Trade >> Trade Simulation Mode On" enabled, then you are specically in Trade Simulation Mode and it does not matter what service you are connected to. At that point, you are using the built-in Sim# accounts. The Simulation accounts do NOT show in the "Trade Account Monitor". Refer to the following:
Overview of Trading: Difference between Simulated and Non-Simulated Trading Modes

You can control how many simulation accounts there are, each one having the word "SIM" and then a number after it. Refer to the following:
Global Trade Settings Windows: Number of Simulation Accounts (Global Settings >> General Trade Settings >> General)

Therefore, you need to be selecting one of the Sim# accounts that you have available. Sim1 should work fine. You also need to set sc.SendOrdersToTradeService to 0 since you are not sending to the live trading service. Refer to the following:
Automated Trading Management: SendOrdersToTradeService

Make sure you have the above setup properly.
For the most reliable, advanced, and zero cost futures order routing, use the Teton service:
Sierra Chart Teton Futures Order Routing
[2026-04-22 23:04:13]
maikoroji - Posts: 2
Thank you John for the quick response.

I applied your recommendations:
- Set sc.SendOrdersToTradeService = 0 AFTER the SetDefaults block
- Used "Sim1" as the TradeAccount
- Trade Simulation Mode is ON
- IsFullRecalculation guard is in place

However, I'm still getting issues:

1. With the previous code versions, sc.BuyEntry() was returning -1 on every bar during Chart Replay (Standard Replay and Accurate Trading System Back Test modes). IsFullRecalculation was 0 on those bars.

2. After applying your fix (SendOrdersToTradeService = 0 after SetDefaults + Sim1), the study produces NO log messages at all — not even simple sc.AddMessageToLog calls. The study appears in the study list on the chart but seems to not execute at all during replay.

Questions:

1. What does return code -1 specifically mean for sc.BuyEntry()? The documentation lists SCT_SKIPPED_FULL_RECALC and other named codes, but -1 is not documented. Is it a general rejection?

2. Is there a specific replay mode required for ACSIL automated trading to work? We tried Standard Replay and Accurate Trading System Back Test — neither worked.

3. Does the DLL name matter? We're using SCDLLName("Algo Noah P2") — could having multiple DLLs in the Data folder (we have older AlgoNoah_v7.dll, v8.dll, v9.dll, RetournementDelta_v3-v7.dll) cause conflicts?

4. When using sc.SendOrdersToTradeService = 0 with TradeAccount "Sim1", should we also set sc.TradeAccount in the SetDefaults block, or only in the s_SCNewOrder structure?

5. For a minimal working example of ACSIL automated trading in Trade Simulation Mode during Chart Replay with Rithmic connection — could you point us to a specific example in the ACS_Source folder that is confirmed to work in this configuration?

6. We noticed that after rebuild, sometimes the study seems to not reload properly. Is there a specific sequence we should follow? (Remove study > Rebuild DLL > Re-add study > Start replay?)

Chart: MNQM6.CME 1 Min #3
SC Version: 2899
Connection: Rithmic (Bulenox prop firm)

Thank you for your help.


"Here is the minimal test code we are using. Could you tell us what is wrong with it?


#include "sierrachart.h"

SCDLLName("Algo Noah P2")

SCSFExport scsf_AlgoNoahP2(SCStudyInterfaceRef sc)
{
if (sc.SetDefaults)
{
sc.GraphName = "Algo Noah P2 TEST";
sc.AutoLoop = 1;
sc.AllowMultipleEntriesInSameDirection = 0;
sc.MaximumPositionAllowed = 1;
sc.SupportReversals = 0;
return;
}

sc.SendOrdersToTradeService = 0;

if (sc.IsFullRecalculation)
return;

SCString msg;
msg.Format("ALIVE | Bar:%d", sc.Index);
sc.AddMessageToLog(msg, 0);

int& TestDone = sc.GetPersistentInt(0);
if (TestDone == 1)
return;

s_SCNewOrder NewOrder;
NewOrder.OrderType = SCT_ORDERTYPE_MARKET;
NewOrder.TradeAccount.Format("Sim1");

int Result = sc.BuyEntry(NewOrder);

SCString msg2;
msg2.Format("ORDER | Result:%d", Result);
sc.AddMessageToLog(msg2, 0);

if (Result > 0)
TestDone = 1;
}

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

Login

Login Page - Create Account