Skip to content

Commit

Permalink
AlliTest
Browse files Browse the repository at this point in the history
  • Loading branch information
Pascal66 committed Aug 21, 2016
1 parent cbd3f2b commit 4b24e63
Show file tree
Hide file tree
Showing 4 changed files with 654 additions and 0 deletions.
381 changes: 381 additions & 0 deletions config/AlligatorBTCUSD.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,381 @@
// Everything is explained here:
// @link https://github.com/askmike/gekko/blob/stable/docs/Configuring_gekko.md

var config = {};

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// GENERAL SETTINGS
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

config.debug = true; // for additional logging / debugging

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// WATCHING A MARKET
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// Monitor the live market
config.watch = {

// see https://github.com/askmike/gekko#supported-exchanges
exchange: 'BTCE',
currency: 'USD',
asset: 'BTC'
}

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CONFIGURING TRADING ADVICE
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

config.tradingAdvisor = {
enabled: true,
method: 'Alligator',
candleSize: 60,
historySize: 25,
adapter: 'sqlite',
talib: {
enabled: false,
version: '1.0.2'
}
}

config.Alligator = {
history = 60;
};

// Exponential Moving Averages settings:
config.DEMA = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 10,
long: 21,
// amount of candles to remember and base initial EMAs on
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -0.025,
up: 0.025
}
};

// MACD settings:
config.MACD = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 10,
long: 21,
signal: 9,
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -0.025,
up: 0.025,
// How many candle intervals should a trend persist
// before we consider it real?
persistence: 1
}
};

// PPO settings:
config.PPO = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 12,
long: 26,
signal: 9,
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -0.025,
up: 0.025,
// How many candle intervals should a trend persist
// before we consider it real?
persistence: 2
}
};

// RSI settings:
config.RSI = {
interval: 14,
thresholds: {
low: 30,
high: 70,
// How many candle intervals should a trend persist
// before we consider it real?
persistence: 1
}
};

// CCI Settings
config.CCI = {
constant: 0.015, // constant multiplier. 0.015 gets to around 70% fit
history: 90, // history size, make same or smaller than history
thresholds: {
up: 100, // fixed values for overbuy upward trajectory
down: -100, // fixed value for downward trajectory
persistence: 0 // filter spikes by adding extra filters candles
}
};

// StochRSI settings
config.StochRSI = {
interval: 3,
thresholds: {
low: 20,
high: 80,
// How many candle intervals should a trend persist
// before we consider it real?
persistence: 3
}
};


//x2MACD settings:
config.x2MACD = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 53,
long: 109,
signal: 41,
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -9999,
up: 0.00000001,
}
};

//nikiehihsa settings:
config.nikiehihsa = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 53,
long: 109,
signal: 41,
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -9999,
up: 0.00000001,
}
};

//x3nikiehihsa settings:
config.x3nikiehihsa = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 53,
long: 109,
signal: 41,
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -9999,
up: 0.00000001,
}
};

//ZERO settings:
config.ZERO = {
// EMA weight (α)
// the higher the weight, the more smooth (and delayed) the line
short: 257.608488,
long: 364.313417,
signal: 225.158074,
// how optimistic is the MACD extrapolation going to be?
crystalball: 0.00000173,
// how large is the stats window for sanity checking?
window: 2345, // SHOULD NOT be larger than your historySize!!!
// the difference between the EMAs (to act as triggers)
thresholds: {
down: -9999,
up: 0.00000042,
}
};



// custom settings:
config.custom = {
my_custom_setting: 10,
}

config['talib-macd'] = {
// FastPeriod, SlowPeriod, SignalPeriod
parameters: [10, 21, 9],
thresholds: {
down: -0.025,
up: 0.025,
// How many candle intervals should a trend persist
// before we consider it real?
persistence: 1
}
}

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CONFIGURING PLUGINS
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// Want Gekko to perform real trades on buy or sell advice?
// Enabling this will activate trades for the market being
// watched by `config.watch`.
config.trader = {
enabled: false,
key: '',
secret: '',
username: '' // your username, only required for specific exchanges.
}

config.adviceLogger = {
enabled: true
}

// do you want Gekko to calculate the profit of its own advice?
config.profitSimulator = {
enabled: true,
// report the profit in the currency or the asset?
reportInCurrency: true,
// start balance, on what the current balance is compared with
simulationBalance: {
// these are in the unit types configured in the watcher.
asset: 1,
currency: 100,
},
// how much fee in % does each trade cost?
fee: 0.25,
// how much slippage/spread should Gekko assume per trade?
slippage: 0.05
}

// want Gekko to send a mail on buy or sell advice?
config.mailer = {
enabled: false, // Send Emails if true, false to turn off
sendMailOnStart: true, // Send 'Gekko starting' message if true, not if false

email: '', // Your Gmail address

// You don't have to set your password here, if you leave it blank we will ask it
// when Gekko's starts.
//
// NOTE: Gekko is an open source project < https://github.com/askmike/gekko >,
// make sure you looked at the code or trust the maintainer of this bot when you
// fill in your email and password.
//
// WARNING: If you have NOT downloaded Gekko from the github page above we CANNOT
// guarantuee that your email address & password are safe!

password: '', // Your Gmail Password - if not supplied Gekko will prompt on startup.

tag: '[GEKKO] ', // Prefix all email subject lines with this

// ADVANCED MAIL SETTINGS
// you can leave those as is if you
// just want to use Gmail

server: 'smtp.gmail.com', // The name of YOUR outbound (SMTP) mail server.
smtpauth: true, // Does SMTP server require authentication (true for Gmail)
// The following 3 values default to the Email (above) if left blank
user: '', // Your Email server user name - usually your full Email address '[email protected]'
from: '', // '[email protected]'
to: '', // '[email protected], [email protected]'
ssl: true, // Use SSL (true for Gmail)
port: '', // Set if you don't want to use the default port
}

config.ircbot = {
enabled: false,
emitUpdats: false,
channel: '#your-channel',
server: 'irc.freenode.net',
botName: 'gekkobot'
}

config.xmppbot = {
enabled: false,
emitUpdats: false,
client_id: 'jabber_id',
client_pwd: 'jabber_pw',
client_host: 'jabber_server',
client_port: 5222,
status_msg: 'I\'m online',
receiver: 'jabber_id_for_updates'
}

config.campfire = {
enabled: false,
emitUpdates: false,
nickname: 'Gordon',
roomId: null,
apiKey: '',
account: ''
}

config.redisBeacon = {
enabled: false,
port: 6379, // redis default
host: '127.0.0.1', // localhost
// On default Gekko broadcasts
// events in the channel with
// the name of the event, set
// an optional prefix to the
// channel name.
channelPrefix: '',
broadcast: [
'candle'
]
}

config.candleWriter = {
adapter: 'sqlite',
enabled: true
}

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CONFIGURING ADAPTER
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

config.adapters = {
sqlite: {
path: 'plugins/sqlite',

dataDirectory: './history',
version: 0.1,

dependencies: [{
module: 'sqlite3',
version: '3.1.4'
}]
}
}

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CONFIGURING BACKTESTING
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

// Note that these settings are only used in backtesting mode, see here:
// @link: https://github.com/askmike/gekko/blob/stable/docs/Backtesting.md

config.backtest = {
adapter: 'sqlite',
daterange: 'scan',
batchSize: 50
}

// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
// CONFIGURING IMPORTING
// ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

config.importer = {
daterange: {
// NOTE: these dates are in UTC
from: "2015-09-09 12:00:00"
}
}

// set this to true if you understand that Gekko will
// invest according to how you configured the indicators.
// None of the advice in the output is Gekko telling you
// to take a certain position. Instead it is the result
// of running the indicators you configured automatically.
//
// In other words: Gekko automates your trading strategies,
// it doesn't advice on itself, only set to true if you truly
// understand this.
//
// Not sure? Read this first: https://github.com/askmike/gekko/issues/201
config['I understand that Gekko only automates MY OWN trading strategies'] = true;

module.exports = config;
Loading

0 comments on commit 4b24e63

Please sign in to comment.