This is an old revision of the document!

Changes to the API key or API Secret will require you to restart the bot.

Click to jump to the section listed.

Click to view the explanation of each parameter.

license = your ProfitTrailer license
server.port = 8081
server.address =
server.api_token =

server.context_path =
server.exchange_url =
server.display_advanced_stats = true

server.sitename = My BTC Bot = BINANCE
trading.log_history = 8

server.timezone_offset = +00:00
server.timezone = US/Eastern
server.language = enus = dark
server.currency = USD

server.disable_password = false
server.disable_config = false
server.disable_online_config = false
server.enable_shutdown = true
server.disable_notification = false
server.disable_browser = false

telegram.bot_token_1 =
telegram.chat_1 =
telegram.new_signal_notification = true
telegram.disable_notification = false

discord.bot_token_1 =
discord.chat_1 =
discord.new_signal_notification = true
discord.new_signal_notification_channel =

default_api_key = The Exchange API key registered with PT Assistant
default_api_secret = The Secret key for the default_api_key

telegram.startup_notification = true
discord.startup_notification = true
telegram.shutdown_notification = true
discord.shutdown_notification = true

server.start_trading_delay = 5

#testmode does paper trading so you will see buy and sell activity.
server.test_mode = true
server.use_testnet = false

#timeout in seconds
connection.timeout = 30

#enabling debug mode = DEBUG

#API Throttle Interim Fix
server.throttle_millis = 10
server.throttle_calls_amount = 40
server.throttle_calls_seconds = 30

General Settings

license = 

Place your ProfitTrailer license here.


server.port = 8081

The port that is being used by the bot. Change this value to something unique (like 8082, etc) if you want to start other instances of the bot on the same machine.


  1. 8080 is a reserved networking port and might not work on some operating systems.
  2. 8085 is reserved for some VM applications and might not work on some operating systems.


server.address =

Bind the Profit trailer instance to a specific WAN/Public IP address. Useful for uses with multiple public IP addresses and multiple bots.


Use to set the exchange you want the bot to connect to. Possible values (POLONIEX, BITTREX, BINANCE, KUCOIN, HUOBI, BITMEX). Must be in CAPITALS.


server.sitename = Steves Bittrex Bot

Set the unique text you wish to appear in the browser tab (website title). This it also used in Discord and Telegram Notifications


trading.log_history = 8

Set how many days of sell log history to show in the GUI. Once the set number of days passes, older history will be removed from the bot. Set this for as long as you want to hold the sales history in ProfitTrailer.

The bot can easily manage a a couple of months of history. Storing trade history data is unlimited when set to 0 or an invalid value.


  • Backups are stored in the /data/backups folder.
  • history setting has a max of 1826



Use server.timezone Instead

server.timezone_offset = +02:00

Set your desired timezone relative to where you live. Important Correct format +hh:mm or -hh:mm See if you have no idea what timezone you live in.


  1. server.timezone will be used instead of the offset if it is entered.


server.timezone = US/Eastern

Valid Values: Java Time Zones

Set the timezone ID of the location you live. This will take precedence over server.timezone_offset and will automatically handle daylight saving times.


server.disable_password = false

Set to true to disable password login to access to your monitoring page.


server.disable_config = true

If set to true this will disable the “Config” options in the web GUI.


server.disable_online_config = false

Set to true to enable local offline storage of settings instead of on the PT database. Settings (excluding will still be communicated to the PT server for encryption but will be stored locally in a file named offlineData. Settings must still be edited using the web GUI.

Config Data is local in memory. When you save new changes:

  1. send changes to the bot
  2. encrypt the data locally
  3. send encrypted data to the server for additional encryption
  4. send back offline
  5. save in offlineData


server.enable_shutdown = true

Enables a button in the GUI to safely stop the bot.


server.disable_notification = false

Set to true to disable the GUI notifications (errors, config changes etc).


server.disable_browser = false

Set to true to stop the browser from automatically opening each time the bot starts.


API Keys

default_api_key =
default_api_secret =

Put the exchange API key here that you registered when purchasing (or by using the PT Assistant Bot) and its secret key here.



See Notification Setup for in depth guidance.

telegram.bot_token_1 = your bot token

Your first Telegram bot token.

telegram.chat_1 = your chat ID

Your first chat ID.

telegram.bot_token_2 = your second bot token

Your second Telegram bot token if you want to send the notifications to another bot. You can use the same token as botToken1.

telegram.chat_2 = your second chat ID

Your second chat ID if you want to send the notifications to another chat or group.

telegram.new_signal_notification = true

Set to true to enable a notification to be sent when a new signal is received.

telegram.disable_notification = false

Set to true disable the sound on telegram notifications.

telegram.startup_notification = true

Set to true to add telegram notifications on startup.

telegram.shutdown_notification = true

Set to true to add telegram notifications on shutdown. Will not work for unexpected shutdowns.



See Notification Setup for in depth guidance.

discord.bot_token_1 = your bot token

Your first Discord bot token.

discord.chat_1 = channel name

The channel name that the bot will post notifications in.

discord.bot_token_2 = your bot token

Your second Discord bot token.

discord.chat_2 = channel name

The channel name that the second bot will post notifications in.

discord.new_signal_notification = true

Set to true to enable a notification to be sent when a new signal is received.

discord.new_signal_notification_channel = channel name

Set a separate channel for new SIGNAL notifications to be sent to. If nothing is set discord.chat_1 will be used instead.

discord.startup_notification = true

Set to true to add discord notifications on startup.

discord.shutdown_notification = true

Set to true to add discord notifications on shutdown. Will not work for unexpected shutdowns.


Other Options

server.start_trading_delay = 5

The start delay prevents the bot from trading for the set number of minutes after bootup.

This parameter is designed to give you enough time to place the bot in SOM or disable trading, or change your buy/sell strategies before it resumes trading.


  1. The Possible Buy Log will be empty
  2. Pairs and DCA heartbeats may not occur
  3. You will not see your existing holdings on the exchange.


server.display_advanced_stats = false

Pro/Advanced Users only: Set to false to disable advanced statistics in the GUI.
NOTE: This is enabled by default. You can turn advanced stats off using this setting.

To see all of the advanced statistic explanations, check the web interface guide here.


server.test_mode = true

Use test mode to setup and test new settings without actually buying/selling your coins.

The bot will do full paper trading, tracking and trading coins in the console and Web GUI as if it were live trading and record sales and profits/losses in.

When changing from test mode to live trading a restart is required. Reset the testmode data using the reset button in the GUI before restarting.

You can use the button in the settings menu or the url http://localhost:8081/settings/test/reset to reset sales, pairs and DCA data without restarting if you wish to try another strategy with a clean slate.


  1. Your real coins and balance will not display while in test mode. The bot ignores them while paper trading.
  2. test_mode_start_balance is used to set a Start Balance to use for test mode funds.
  3. Even if you ran a live bot and a test mode bot side by side the results would sometimes differ. The test mode bot will assume all attempts to buy or sell were successful where as if it were live it might have expired.
  4. There is a 15 second delay after a reset before trading resumes.


server.use_testnet = true

Set to true to use the test net instead of the live net on Bitmex.


  1. Not applicable to any other exchanges.
  2. unlike ProfitTrailers server.test_mode the Bitmex testnet is not using the exact same data as the live net.


server.api_token = 

This optional token can be used to allow third party applications to connection to your BOT via a built in API.

The token is like a password. Configure any random string of letters and numbers. e.g (kjashd983h2dn9832jdi3d0892h3d)


server.context_path = /binancebtc

Adds a custom base url to the Web server.

Using the example above you would now access ProfitTrailer from http://localhost:8081/binancebtc/monitoring.


  1. This does not change the requirement to run each bot on a different port.


server.exchange_url =

Define custom url to be used when a coin pair is clicked in the Web GUI.

The %c and %b values are variables based on the coin pair being clicked.

%c = currency (DOGE)
%b = base (BTC)

If you are wanting to link to TV instead of the exchange this is also possible.


connection.timeout = 30

Valid Values: Integers greater than or equal to 30

Use this setting if you are getting too many Websocket timeout errors. Default length is 30 seconds but you can increase this if required.

top = default

Choose between three possible skins dark, light and default.


server.language = ENGB

Set your desired localization for the Web GUI.

Available Languages:

  • ENGB = English with European date format
  • ENUS = English with US date format
  • KO = Korean
  • CHT = Chinese Traditional
  • CHS = Chinese Simplified


server.currency = USD

Set your desired currency for values in the Web GUI to be displayed in.

Available Currencies:

  • AUD - Australian Dollar
  • BRL - Brazilian Real
  • CAD - Canadian Dollar
  • CHF - Swiss Franc
  • CNY - Chinese Yuan Renminbi
  • CZK - Czech Koruna
  • DKK - Danish Krone
  • EUR - Euro
  • GBP - British Pound
  • HKD - Hong Kong Dollar
  • HUF - Hungarian Forint
  • IDR - Indonesian Rupiah
  • ILS - Israeli Shekel
  • INR - Indian Rupee
  • JPY - Japanese Yen
  • KRW - South Korean Won
  • MXN - Mexican Peso
  • MYR - Malaysian Ringgit
  • NOK - Norwegian Krone
  • NZD - New Zealand Dollar
  • PHP - Philippine Piso
  • PLN - Polish Zloty
  • RUB - Russian Ruble
  • SEK - Swedish Krona
  • SGD - Singapore Dollar
  • THB - Thai Baht
  • TRY - Turkish Lira
  • USD - United States Dollar
  • ZAR - South African Rand

top = DEBUG

Support may ask you to run your bot in debug mode to help us work out why something is not working. You can run it in debug mode using this parameter. Running in DEBUG mode constantly is not recommended as the log file is huge.

WARNING: The log file will contain sensitive information such as your API Keys. Do not post pictures/files/links of your logs in open/public chat, use the support initiated ticket channels as they are private.


API Throttle

These parameters are a temporary solution to reduce the rate of API calls while we continue to rewrite the API code.
NOTE: These are not always necessary. Mostly they can be removed or commented in the file so they are ignored except in specific circumstances.

server.throttle_millis = 100

Works on all exchanges.

Set the number of milliseconds to pause between each pair in the code loop.

server.throttle_calls_amount = 40

Works on Binance and Bittrex.

Set the number of API calls to count before pausing for the number of seconds set in server.throttle_calls_seconds.

server.throttle_calls_seconds = 30

Works on Binance and Bittrex.

Set the number of seconds to pause in between batches of API calls. The number of calls is set with server.throttle_calls_amount.


Bittrex (Only if you are having banning problems)

  • server.throttle_millis = 100
  • server.throttle_calls_amount = 40
  • server.throttle_calls_seconds = 30

Binance / Poloniex (Only if you are having banning problems)

  • server.throttle_millis = 10
  • server.throttle_calls_amount = 1000
  • server.throttle_calls_seconds = 30


  • Last modified: 5 weeks ago
  • by armchairguru