This is an old revision of the document!

Changes to this file will require you to restart the bot.

Click here for Version 1 settings

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.sitename = My BTC Bot = BINANCE
trading.log_history = 8

server.timezone_offset = +00:00
server.language = engb = 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.disable_notification = false

discord.bot_token_1 =
discord.chat_1 =

default_api_key = The Exchange API key registered with PT Assistant
default_api_secret = The Secret key for the default_api_key
trading_api_key = The second Exchange API key.
trading_api_secret = The Secret for the second 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

#timeout in seconds
connection.timeout = 30

#enabling debug mode = DEBUG = TRACE

#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. 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. = BITTREX

Use to set the exchange you want the bot to connect to. Possible values (POLONIEX, BITTREX, BINANCE). 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 = 7

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. With PTTracker now included with any PRO license ProfitTrailer PRO users will be able to maintain an indefinite history in Tracker regardless of how many days are stored in ProfitTrailer.

The bot can easily manage a a couple of months of history. The maximum value is 1826 days (5 years).

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.

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.

trading_api_key =
trading_api_secret =

Put a second exchange API key here that will be used to do all the buying and selling. This API key does NOT need to be registered. Use a different API Key to default_api_key.


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.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.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.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 test_mode 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. start_balance needs to be set in
  3. Deleting ProfitTrailerData.json will also clear the data but at the expense of any real data also.
  4. 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.

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. = 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 = 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. If subsequently providing screenshots to support, be sure to censor such information.


API Throttle

These parameters are a temporary solution to reduce the rate of API calls while we continue to rewrite the API code.

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: 9 months ago
  • by gingerman