Frequently Asked Questions



Who are the official Resellers for PT

The official resellers are listed here.


Where do I get support?

You can get support in Discord Official Discord Support Group, or by submitting a ticket to


What is this message in the buy/sell strategy column?

ProfitTrailer runs its code in cycles. When any of the following messages are displayed the subsequent checks are no longer considered. For this reason, you will only see the message closest to the top displayed in the GUI. You will not see multiple messages.

If you are unsure what the message means the Web Interface Guide explains most of them with links to the relevant parameters.










What do the Buy and Sell Buttons do?

In the Possible Buy Log (PBL) the buy button will attempt to make an initial buy. The size of the buy is determined by your DEFAULT_initial_cost setting or coin specific equivalent.

In the DCA Log the buy button will attempt to complete the next DCA buy in accordance with your DCA settings. The size of the purchase is determined by your DEFAULT_DCA_buy_percentage for the next DCA level or coin specific equivalent.


  1. Buys may still be prevented by lack of orderbook volume.

In the Pairs Log the sell button will attempt to sell the coin at the top buy order price. If it is unable to sell all of the coins at ones it will try again at the same price two more times. If you still have remaining coins you can initiate a new manual sell however this will be at the new price point (top buy order).

In the DCA Log the sell button will attempt to sell the coin at the top buy order price. If it is unable to sell all of the coins at ones it will try again at the same price two more times. If you still have remaining coins you can initiate a new manual sell however this will be at the new price point (top buy order).


Can I purchase additional API slots?


A standard subscription comes with 2 API key slots. You can purchase additional slots for the same exchange by logging in to your account portal at

After purchasing an additional slot you need to redeem it with PT Assistant. Type !redeemapi in a private message to PT Assistant on Discord. After it is redeemed you can use !addkey as per the normal process outlined in the API Key Guide.

Any API key that is attached to this extra slot will display an expiration date in !listkeys. Once an API key slot expires, the API key expires, so the bot running with this API key will also expire.

Advanced Discount
Advanced users receive a discounted price for each additional slot through use of a discount code. Your unique code can be obtained from PT Assistant on Discord.

Talk to PT Assistant in a private message and type !givemediscount to receive the code. Enter the code while purchasing the API slot to receive the discount.


  1. The code will expire after 24 hours. After this time you will need to generate a new one.
  2. Each code can be used only one time.


A Parameter is missing from my file

Not all parameters are included in the default download. Not all parameters are mandatory to have in your file either.

If you are missing a parameter, simply add it to the appropriate file. Order is not critical but for ease of use you can group similar parameters near each other.


A Column is missing from my GUI

On small screens some columns are collapsed to save space. You will know if columns have been hidden when you see in the first column.

The information can be made visible again by clicking to expand as seen below.


Why am I getting these expired orders in my logs?

Expired orders are part of trading. If the order book is thin, you will most likely get expired orders as the bot places limit orders when buying and selling.

Use DEFAULT_min_orderbook_volume_percentage or DEFAULT_DCA_min_orderbook_volume_percentage to prevent the bot attempting to make buys when the order book volume is low.

For selling, depending on the amount of coins you hold, you might also get expired orders, which in some cases are just partial sell orders.


Why are my coins in WATCHMODE?

Please refer to the Pairs Log section of the Web interface Guide.


Where do I find my License?

You ProfitTrailer License is emailed to you usually within 1 hour of your payment being confirmed. If a cryptocurrency payment form is used it is usually emailed to you within one hour of your payment being confirmed on the block chain.

The email is titled “ProfitTrailer License Activation” if you would like to search you inbox or junk folder for it.

If you need your email to be resent you will need to submit a ticket and enough information to prove who you are such as:

  • Confirmation emails
  • Payment addresses/information
  • email address
  • order number


How do I enable/disable the web GUI Config?

The Config is enabled in the Web GUI by default however it still required you have a password set in order to use it. If you don't have the password set, or password is disabled, or you are logged in as guest, config will be disabled.

If you wish to disable the config please see for server.disable_config


How do I enable trading on my bot?

If you look in your possible buy log and see TRADING DISABLED in the buy column, you will need to enable trading for your active config:

  • by going to the Basic Configuration GUI screen and clicking the button at the bottom of the screen as follows:

  • click that button. It will be grey and say “Trading OFF”, you want it to be blue. Then click the save button near the top
  • Or by going to the Advanced Configuration screen and changing this setting in the pairs tab as follows:
DEFAULT_trading_enabled = true


Why is my Possible Buy Log Empty?

There are a number of reasons the Possible Buy Log might be empty.

  • DEFAULT_trading_enabled = false. This is the default setting when you download the bot as a safety measure.
  • you have missing or invalid indicators_config.
  • You have set enabled_pairs = true instead of ALL. enabled_pairs = ALL is correct
  • You have set trading_enabled = ALL instead of true. DEFAULT_trading_enabled = true is correct
  • No remaining pairs meet your buy criteria.
    • Perhaps you use a very small whitelist and already own all of them, or
    • you have a high DEFAULT_min_buy_volume setting and no more coins meet that minimum volume
      • Bittrex and Kucoin have quite low total trade volumes. ensure you research what volume is appropriate for your exchange
    • you have a high DEFAULT_min_buy_price setting and no more coins meet that minimum price.
  • server.start_trading_delay will stop the PBL populating until it times out.


How can I set or reset a password?

You will be prompted to set a password when first booting up the bot. The password is stored in the ptdb.db file in the ProfitTrailer/data folder.
If you need to reset your password you will need to:

  1. Open notepad++ to a new file
  2. Save that file as “reset-pw” and place in the profittrailer/data folder
  3. For the save as type dropdown below the filename , choose 'All Files'

If you do not wish to have a password at all add the following to your file.

server.disable_password = true

Note: you will not be able to change configuration files without a password.


How can I allow guests to view my bot?

By selecting Change Passwords in the Web Interface Settings you can create a password for the Monitoring page separate from the Admin password. Guests will have access to the GUI but the Config options will not be available. This password is stored in the ptpw-monitor file and can be deleted to remove guest login ability.

Guests will not be able to see your configuration files, reset the passwords or stop the bot.


How can I Reset the Price of a Coin?

You can use the HotConfig to set a bought price. HotConfig is a place to run one-time settings in the window to take certain immediate actions in the bot. Read all about it here.


I manually bought a coin and it already has a DCA count

ProfitTrailer resets the DCA count of a pair when the bot makes a new purchase. By manually purchasing you have bypassed this step.

See How can I Reset the DCA count


How can I Reset the DCA count?

You can use the HotConfig to do this. HotConfig is a place to run one-time settings in the window to take certain immediate actions in the bot. Read all about it here.


What does a trigger value of 999 mean?

If ProfitTrailer is unable to find a default (or DCA level specific) buy/sell_value or buy_trigger for the coins next action you will see 999 or -999 displayed. This is a visual cue that something is missing.


Why is my TCV Different from my Exchange Balance

TCV is calculated by adding up the balance plus the actual value of the purchases that appear in the Pairs, DCA, and Pending logs. It excludes Dust log value, so it may not match your exchange balance exactly.


How do I log out of ProfitTrailer?

Click the Settings Cog in the Web GUI to access the settings tab and the Log Out button.


How do I stop the bot?

There are several methods for stopping the bot safely.

1. Click on the Gear icon in the upper right corner of the GUI screen. Then select “Settings”, followed by “Stop ProfitTrailer” at the bottom of the screen to stop the bot. (server.enable_shutdown must be true)

2. Append /stop to theport in your browser URL. The link will not work if server.disable_password is true.


3. Stop the bot from the command line/terminal by typing CTRL-C (cmd+c on MAC).

4. In pm2, stop the bot by finding the pm2 process id (pm2 list)and stopping it with that. For example if your bot is process id 2, the command would be (in the terminal window) pm2 stop 2.


Do I have to stop the bot when changing settings?

Only changes made to your API keys will require the bot to be restarted. Changes made to all other properties via the HotConfig or to the files directly will be detected automatically.


How do I save and load different configurations?

For a visual guide about loading/activating/editing/deleting a config Click here.

Editing Configs

Hovering over the header config link, you will see two selections; Active Config and Other Configs.
Choose one of these to access the config tabs.

If you wish to edit a particular config, clicking the Active Config allows access to only your active config. Clicking on Other Configs allows access to all configs. Click on the Orange config name to reveal a dropdown menu. Select the config you wish to edit and make changes as desired.

Press the button to save your changes before navigating to any other page.

Changing Configs

Select the Settings Cog and then choose Settings from the two options at the top of the menu.

You can then click the config name to change the active configuration. The bot will switch to the new config straight away.

Importing a Config

Click the button in the Settings Menu or navigate to http://localhost:8081/setup (adjust port/IP if necessary).

NOTE: Do not use spaces when naming your configurations.

  • Public - Choose from our database of public configs and copy it to your bot giving it a unique name.
  • Saved - Choose from one of your own configs that you have already created in the past.
  • Signal Providers - Leave blank to receive signals from all active subscriptions or choose which signals to receive.
    • Note: this is only for users with Signal Subscriptions

Creating a new config

Hovering over the header config link, you will see two selections; Active Config and Other Configs.
Choose one of these to access the config tabs.

Clicking on Other Configs allows access to all configs. Click on the Orange config name to reveal a dropdown menu. Select the config from which you will make a new copy.

If you have a config you want to base it on select it from the dropdown menu.

Click the button to choose a name for your new config.

Your newly named config will now be displayed and you are free to edit it.

Using Public Configs

Public configs can be copied from the setup screen. See Importing a Config above.

You are importing a static copy of the config and will not receive any automated updates to it. You can modify it yourself if you desire to make and adjustments. If the config does get updated in the future you can make the changes manually, or import the newer config and save it as a separate config for your bot.

Deleting a Config

Hovering over the header config link, you will see two selections; Active Config and Other Configs.
Choose Other Configs in order to access the dropdown selector box.

If you wish to delete a particular config click the Orange config name to reveal the dropdown menu.

Select the config you wish to delete and then click the button.

You will not have the option to delete the active config.


How do I set up ProfitTrailer to trade a Different Market?

Below are the main pairs and DCA config changes you would need to make. In this example we will change from BTC to USDT on bittrex.

Note: not all possible parameters are included in this example. Parameters needing to be adjust for USDT values are marked with *.


See the pairs_config wiki page

*market = USDT
*DEFAULT_initial_cost = 50
DEFAULT_max_trading_pairs = 3
enabled_pairs = ALL or
*enabled_pairs =  OMG, LSK
##                                                  ## 
##         B U Y  A R E A   B I T T R E X           ## 
##                                                  ## 
DEFAULT_DCA_enabled = -2
DEFAULT_sell_only_mode_enabled = false
DEFAULT_panic_sell_enabled = false
DEFAULT_A_buy_strategy = LOWBB
DEFAULT_A_buy_value = 0
DEFAULT_A_buy_value_limit = 0
DEFAULT_trailing_buy = 0.25
*keep_balance = 50
*DEFAULT_min_buy_volume = 1000000
*DEFAULT_min_buy_price = 0.01
DEFAULT_max_buy_spread = 1.5
##                                                  ##
##         S E L L   A R E A   B I T T R E X        ##
##                                                  ##
DEFAULT_A_sell_strategy = GAIN
DEFAULT_A_sell_value = 1
DEFAULT_trailing_profit = 0.25
DEFAULT_stop_loss_trigger = -30
DEFAULT_stop_loss_timeout = 0


See the dca_config wiki page

##                                                  ##
##                B U Y  A R E A                    ##
##                                                  ##
DEFAULT_DCA_ignore_sell_only_mode = false

*DEFAULT_DCA_min_buy_volume = 500
DEFAULT_DCA_max_buy_times = 4
*DCA_keep_balance = 50
DCA_keep_balance_percentage = 0

DEFAULT_DCA_min_order_book_volume_percentage = 150

DEFAULT_DCA_buy_trigger_1 = -3 
DEFAULT_DCA_buy_trigger_2 = -3
DEFAULT_DCA_buy_trigger_3 = -5
DEFAULT_DCA_buy_trigger_4 = -6.5
DEFAULT_DCA_buy_trigger_5 = -7.8

DEFAULT_DCA_trailing_buy = 0.3
DEFAULT_DCA_buy_percentage = 150

DEFAULT_DCA_stop_loss_trigger = 0

DEFAULT_DCA_max_buy_spread = 2

##                                                  ##
##                  S E L L  A R E A                ##
##                                                  ##
DEFAULT_DCA_A_sell_strategy = GAIN
DEFAULT_DCA_A_sell_value = 1

DEFAULT_DCA_trailing_profit = 0.25

pending_order_wait_time = 0


How do I vary a setting per DCA level?

Most DCA settings can be varied based on the number of times a coin has DCA'd. Look in dca_config for this symbol:

DCA Level Specific Settings

This is achieved by entering the values into dca_config multiple times and appending _x to the end where x is the dca level.


  1. If a coin has DCA'd (2) times then it will use the _3 values for the next buy action and the _2 values for the next sell action.
  2. In the examples below the optional default parameter will be used if a _x parameter cannot be found for the next DCA action.
    1. If no _x parameter exists for the next dca level and no default parameter exists the bot will return a value of +/-999 ultimately nullifying the parameter.

Example: Take a lower profit the more DCA times a coin has purchased

DEFAULT_DCA_A_sell_strategy = GAIN
DEFAULT_DCA_A_sell_value = 1.5

This would normally result in a DCA sell with a minimum 1.5% profit however we can lower the desired minimum profit for each DCA level.

DEFAULT_DCA_A_sell_strategy = GAIN
DEFAULT_DCA_A_sell_value = 1.5  <- used if no numbered setting or missing number in sequence (has no number at the end)
DEFAULT_DCA_A_sell_value_1 = 1.5
DEFAULT_DCA_A_sell_value_2 = 1.3
DEFAULT_DCA_A_sell_value_3 = 1.15
DEFAULT_DCA_A_sell_value_4 = 1.0
DEFAULT_DCA_A_sell_value_5 = 0.8

Example: Buy the same number of coins each time I DCA

Without explaining the Math, the following example would buy approximately the same number of coins every DCA level, matching the DEFAULT_initial_cost amount.

DEFAULT_DCA_buy_percentage = 55  <- used if no numbered setting or missing number in sequence (has no number at the end)
DEFAULT_DCA_buy_percentage_1 = 100
DEFAULT_DCA_buy_percentage_2 = 50
DEFAULT_DCA_buy_percentage_3 = 33.33333333
DEFAULT_DCA_buy_percentage_4 = 25
DEFAULT_DCA_buy_percentage_5 = 20

How do I Change Settings on a Single Coin?

All properties starting with “DEFAULT_” in the pairs config or dca config files can also be configured as “coin_” to act on a specific coin. This is useful when you want to do something (or a series of things) to one or more coins, differently from your default settings.

Most options can be turned off by indicating “false” or setting a value of 0, and turned on by “true”.
A coinpair setting overrides DEFAULT_ settings

Look in the pairs config and the dca config to see which settings are able to be used for single coin pairs. It is indicated with this symbol:

Example: Turn off trading for a single coin

In addition to DEFAULT_trading_enabled = true you would add LTC_trading_enabled = false to pairs_config.

Normal trading will be unchanged but LTC will no longer be trade-able. LTC will appear in the pairs log with a buy strategy of WATCHMODE or if hidden_pairs = ALL it will no longer appear in the GUI.

Example: I want to panic sell a single coin.

To panic sell TRX, add TRX_panic_sell_enabled = true to your pairs config.

Example: I want to change the buy strategies for one coin

Lets say you have the following in pairs config:

DEFAULT_A_buy_strategy = EMAGAIN
DEFAULT_A_buy_value = -0.50
DEFAULT_B_buy_strategy = RSI
DEFAULT_B_buy_value = 30

For one coin in particular (LTC) you want to use EMAGAIN only but with a different buy value. You keep the defaults exactly the same above, but need to add the following:

LTC_A_buy_value = -0.85
LTC_B_buy_strategy = DISABLED

This changes the buy value for strategy A for LTC and prevents LTC from using the B strategy.


How is BB calculated?


How does trailing profit work?

Your GAIN strategy sell_value is the amount you want as profit. If you don't set trailing_profit, as soon as the price reaches that amount the bot will attempt to sell.

Now you say. I want 0.5% trailing_profit. meaning. I want to risk 0.5 in order to gain more. Why risk ?

If you have sell_value at 2%, the bot will not sell anymore when it reaches 2%,because we gave it 0.5% breathing room, so, if the price goes to 2.3%, we mark that down as the highest value. Now the price goes down to 1.9%, the bot won't sell, because it is under our 2% gain value and 0.4% change is still within our breathing room:
0.4% = 2.3 - 1.9
That is the risk we are talking about.
The profit reached 2% but the bot did not sell because of trailing profit.

Now if the price continues to go down, you are left with a bag. But not this time!

The price goes up to 2.8% then 3.5%. So we mark down 3.5% a our highest value, then the price reaches for 3.7% profit!

So when will we sell? Our gain was set at 2%!

In a sudden movement the price goes down to 3.1% just like that:
3.7% - 3.1% = 0.6%

Our trailing profit was set at 0.5% and 0.6% is > 0.5% so enough risk. Now we sell!

If this isn't clear enough, read A Trailing Profit Story


How do I turn off the automated Sell Only Mode

Sell Only Mode (SOM) can be automatically turned on when the triggers in pairs config are tripped by rising or falling market, or by consecutive buys.

But what if you want to turn off SOM anyway?

1) Determine why the SOM is triggered by holding the mouse over the SOM indicator in the browser window and read the message that pops up. This will guide you to which trigger to adjust.

2). Change the trigger value. For example if the price_rise_trigger has tripped, and the current market has gone up 5%, and your trigger is set for 4%, you would need to change your trigger to more than 5% and also change the recover trigger, price_rise_recover_trigger in this case, to more than 5%.

3). Save the file. The bot should now recover from SOM. If not, you may need to restart the bot or force SOM off (4)

4). Alternatively, If you don't want to permanently change your trigger settings you have these options:

  • The options below only work if you have set a password for your GUI!
  • Manual FORCE override

You can also use the SOMO Override located within the settings cog > settings tab > SOMO dropdown selector.

  • Disabled - SOMO Off, SOM will continue to work automatically according to settings.
  • FORCED ON - SOM will be forced ON and will stay on until SOMO is disabled or forced off.
  • FORCED OFF - SOM will be forced OFF and not allowed to activate unless SOMO is disabled or forced on.


How to Set up a Second Bot Instance

WARNING: Using multiple instances of ProfitTrailer on one exchange account is not recommended. The bot is not designed to work alongside another instance. This can result in multiple untested side effects and trading conflicts within the bot itself.

This guide assumes that you are using a second instance on:
1) a new account on the same exchange (to trade USDT or ETH for example), or
2) to create a new instance on a different exchange using a different exchange license.

For help with setting up a bot on a VPS, please see this guide. This has additional info on setting up a second instance in a VPS environment in Linux, and managing that remotely in a Windows environment.

Setting up a second instance of the ProfitTrailer bot is simple.

1. Download the latest release of ProfitTrailer and extract to a new folder separate from your other instance(s). Alternatively you can copy your files from your first instance and delete the following:

  • data folder
  • log folder
  • backup folder (backup folder is inside the data folder in 2.2.x+ bots)

2. Copy the file from bot 1 to the new bot folder and overwrite the existing file

3. Change the settings in file as follows:

  • Change the server.port to another unique, unused port. The default is 8081. For example, make the next bot use 8082, and the next one 8083, etc. If you get an error that the port is in use, change it.
  • If you are changing to a new exchange (BITTREX, POLONIEX, or BINANCE), then enter the new exchange in
  • Enter the new API key and secret.
  • If you have not yet registered a new default_api_key you will need to talk to PT Assistant on discord and register it. Go here to see that process: API Key Guide.

4. Any other config changes are optional. You can setup new notifications bots etc now if desired.

5. When running the new bot for the first time Ensure you choose a new UNIQUE name for the config. You should be prompted to choose/load a config when it first boots up. SeeSave/Load different Config. Make changes to the pairs_config, dca_config and indicators_config files in the GUI after the bot is running.


Why don't we allow people to sell PT Settings?

While we don't give out settings beyond a basic startup profile with your PT purchase, we do coach and train people how to create good settings. Some of our official resellers give away some basic settings for free that will give you an idea on how to manipulate the settings for your needs. We also encourage customers to share their knowledge, as that benefits the most people.

Our belief is to “teach a man to fish for life” instead of just “giving him fish for a day.” Our goal is to provide support that is from known and validated individuals that are trusted. We cannot do that if we have random resellers PMing all of our customers, selling them things.

With these goals in mind, we do not support the selling of settings for ProfitTrailer. While we cannot police the entire internet, we will not support it here, instead, choosing to support and guide our users. There is no way for us to stop someone from making poor settings, which reflects poorly on PT. Instead, we choose to rely on our reseller to have good, free settings.


What is Dust?

Dust is the technical term for small amounts of a given coin that are below the minimum trade levels set by each exchange.

Some tips for avoiding dust:

  • As of late April 2018, Binance has a way to consolidate dust. Just go to your Funds > Balances page and look for the button up top.
  • Keep your initial trade amount a few percent higher than the minimums allowed by the exchange. e.g if minimum is 0.0001 use 0.00012 or higher.
  • On Binance the fees are taken out of the coin you purchase which can leave you with partial coins that can't be sold. Binance has their own coin called BNB which can be used for fees instead and also halves your fee. On Binance, dust is unavoidable unless you buy and hold some BNB coins. Just 1 or two is plenty to start with and you can top it up as it gets low. Ensure you disable trading for BNB otherwise the bot will try to sell it.
  • Having referral rewards deposited to your account can leave dust.


Where are the database backups located ?

Backups are stored in the /data/backups folder, inside the ProfitTrailer Main Folder.


What / Where is an ordersettings file?

Every time ProfitTrailer makes a buy or sell it creates a record of the settings that it was configured to use at the time. Support may ask you for a copy of a particular ordersettings file in order to troubleshoot your issue.

You will find the ordersettings folder in the main ProfitTrailer folder. Sort the files by date modified in order to help match them up with orders on the exchange/bot.


How do I take and upload a screenshot?

Each Operating system requires different steps to take a screenshot and there are many ways to take a screenshot in most cases. We will focus on how to take a screenshot of a selected portion of your screen.


Any modern Windows OS includes the Snipping Tool. Search for this tool in the start menu or press Shift+Windows+S so enter snipping mode.

  1. Click New, The pointer changes to a crosshair.
  2. Move the crosshair to where you want to start the screenshot, then click and drag to select an area.
  3. When you've selected the area you want, release your mouse or trackpad button. To cancel, press the Esc (Escape) key before you release the button.
  1. Press Shift-Command-4. The pointer changes to a crosshair.
  2. Move the crosshair to where you want to start the screenshot, then click drag to select an area.
  3. While dragging, you can hold Shift, Option, or Space bar to change the way the selection moves.
  4. When you've selected the area you want, release your mouse or trackpad button. To cancel, press the Esc (Escape) key before you release the button.
  5. Find the screenshot as a .png file on your desktop.

For other methods you can see this Apple Support Article

Uploading A screenshot to Discord

Remember: Never upload private information to public channels. Private Information Includes:

  • ProfitTrailer License key
  • API Key
  • Public IP Address
  • Email
  • Name
  • Passwords

You can upload the screenshot to a channel or a private chat in several ways.

  1. If the screenshot is copied to your clipboard you can paste the image directly into discord.
  2. You can drag and drop a file or image into a chat window
  3. You can browse for and upload a file buy clicking the plus symbol in the message box.

For a detailed explanation you can see this Discord Support Article


How many different Configs can I have saved?

A configuration (or Config) is a complete set of settings comprising of Pairs, DCA and Indicator settings. The number of saved Configs you can have is determined by the number of instances (API keys) your license supports.

To find out how many your license supports, use the PT Assistant bot in Discord and type !info. The bot will show you information regarding your license.


  • faq.txt
  • Last modified: 9 days ago
  • by armchairguru