UNPKG

oanda-stats

Version:

A CLI offering trading stats based on your Oanda Forex account.

1 lines 9.31 kB
{"4cb2d34d86":{"_id":"5d4f712fefc1027b23fe2e5d","id":"4cb2d34d86","code":"var series = [];\nvar currencies = _.groupBy(trades, function(item) {\n return item.instrument;\n});\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n var serie = {\n name: instrument,\n data: _.map(items, function(item) {\n return {\n x: item.close_time,\n y: item.pl\n }\n })\n }\n series.push(serie);\n});\nvar formatted = utils.formatter(series, {\n group: 'sum',\n transform: 'sum'\n});\nvar chart = {\n type: \"chart\",\n chartType: \"area\",\n series: formatted.series,\n x_axis: formatted.x_axis,\n height: 500\n}\nreturn chart;","name":"Gains per pair"},"7896674257":{"_id":"5d4f713defc1027b23fe2e74","id":"7896674257","code":"var series = [];\nvar currencies = _.groupBy(trades, function(item) {\n return item.instrument;\n});\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n var serie = {\n name: instrument,\n data: _.map(items, function(item) {\n return {\n x: item.close_time,\n y: item.pl\n }\n })\n }\n series.push(serie);\n});\nvar formatted = utils.formatter(series);\nvar chart = {\n type: \"chart\",\n chartType: \"area\",\n series: formatted.series,\n x_axis: formatted.x_axis,\n height: 500\n}\nreturn chart;","name":"P/L per instrument"},"d409d3439d":{"_id":"5d4f715befc1027b23fe2ebc","id":"d409d3439d","code":"\r\nvar series = [];\r\n\r\nvar pairs = _.groupBy(trades, function(item) {\r\n return item.instrument;\r\n})\r\n\r\n_.each(pairs, function(items, instrument) {\r\n // Keep the closed trades only\r\n items = _.filter(items, function(item) {\r\n return item.close_time;\r\n });\r\n \r\n var sum = 0;\r\n _.each(items, function(item) {\r\n sum\t+= item.pl;\r\n })\r\n series.push({\r\n \tlabel:\tinstrument,\r\n \tvalue:\tsum\r\n });\r\n});\r\n\r\n\r\n\r\nvar chart = {\r\n type: \"chart\",\r\n chartType: \"bar\",\r\n series:\t\tseries,\r\n}\r\nreturn chart;","name":"Profits per pair"},"30fd0543a1":{"_id":"5d4f7163efc1027b23fe2ede","id":"30fd0543a1","code":"\r\nvar series = [];\r\n\r\nvar pairs = _.groupBy(trades, function(item) {\r\n return item.instrument;\r\n})\r\n\r\n_.each(pairs, function(items, instrument) {\r\n // Keep the closed trades only\r\n items = _.filter(items, function(item) {\r\n return item.close_time;\r\n });\r\n \r\n var sum = 0;\r\n _.each(items, function(item) {\r\n sum\t+= item.pl;\r\n })\r\n series.push({\r\n \tlabel:\tinstrument,\r\n \tvalue:\tsum/items.length\r\n });\r\n});\r\n\r\n\r\n\r\nvar chart = {\r\n type: \"chart\",\r\n chartType: \"bar\",\r\n series:\t\tseries,\r\n}\r\nreturn chart;","name":"Positions per pair"},"be5e834cc8":{"_id":"5d4f7153efc1027b23fe2ea8","id":"be5e834cc8","code":"\nvar currencies = {};\n\n_.each(trades, function(item) {\n var pairs = item.instrument.split('_');\n _.each(pairs, function(pair) {\n if (!currencies[pair]) {\n currencies[pair] = [];\n }\n currencies[pair].push(item);\n })\n});\n\n\nvar series = [];\n\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n \n var sum = 0;\n _.each(items, function(item) {\n sum\t+= item.pl;\n })\n series.push({\n \tlabel:\tinstrument,\n \tvalue:\tsum\n });\n});\n\n\n\nvar chart = {\n type: \"chart\",\n chartType: \"bar\",\n series:\t\tseries,\n}\nreturn chart;","name":"Profit per currency"},"a520d24311":{"_id":"5d4f7168efc1027b23fe2ef6","id":"a520d24311","code":"\nvar currencies = {};\n\n_.each(trades, function(item) {\n var pairs = item.instrument.split('_');\n _.each(pairs, function(pair) {\n if (!currencies[pair]) {\n currencies[pair] = [];\n }\n currencies[pair].push(item);\n })\n});\n\n\nvar series = [];\n\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n \n var sum = 0;\n _.each(items, function(item) {\n sum\t+= 1;\n })\n series.push({\n \tlabel:\tinstrument,\n \tvalue:\tsum\n });\n});\n\n\n\nvar chart = {\n type: \"chart\",\n chartType: \"bar\",\n series:\t\tseries,\n}\nreturn chart;","name":"Positions per currency"},"bf56f6420e":{"_id":"5d4f712fefc1027b23fe2e5d","id":"bf56f6420e","code":"var series = [];\n\nvar currencies = {};\n\n_.each(trades, function(item) {\n var pairs = item.instrument.split('_');\n _.each(pairs, function(pair) {\n if (!currencies[pair]) {\n currencies[pair] = [];\n }\n currencies[pair].push(item);\n })\n});\n\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n var serie = {\n name: instrument,\n data: _.map(items, function(item) {\n return {\n x: item.close_time,\n y: item.pl\n }\n })\n }\n series.push(serie);\n});\nvar formatted = utils.formatter(series, {\n group: 'sum',\n transform: 'sum'\n});\nvar chart = {\n type: \"chart\",\n chartType: \"area\",\n series: formatted.series,\n x_axis: formatted.x_axis\n}\nreturn chart;","name":"Gains per currency"},"c20e6c467c":{"_id":"5d4f713defc1027b23fe2e74","id":"c20e6c467c","code":"var series = [];\n\nvar currencies = {};\n\n_.each(trades, function(item) {\n var pairs = item.instrument.split('_');\n _.each(pairs, function(pair) {\n if (!currencies[pair]) {\n currencies[pair] = [];\n }\n currencies[pair].push(item);\n })\n});\n\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n var serie = {\n name: instrument,\n data: _.map(items, function(item) {\n return {\n x: item.close_time,\n y: item.pl\n }\n })\n }\n series.push(serie);\n});\nvar formatted = utils.formatter(series);\nvar chart = {\n type: \"chart\",\n chartType: \"area\",\n series: formatted.series,\n x_axis: formatted.x_axis,\n height: 350\n}\nreturn chart;","name":"P/L per currency"},"c37827482f":{"_id":"5d4f71aeefc1027b23fe3069","id":"c37827482f","code":"var pair = variables.currency||\"EUR_USD\";\nvar series = [];\nvar currencies = _.groupBy(trades, function(item) {\n return item.instrument;\n});\nfor (i in currencies) {\n if (i!=pair) {\n delete currencies[i];\n }\n}\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n var serie = {\n name: instrument,\n data: _.map(items, function(item) {\n return {\n x: item.close_time,\n y: item.pl\n }\n })\n }\n series.push(serie);\n});\nvar formatted = utils.formatter(series, {\n group: 'sum',\n transform: 'sum'\n});\nvar chart = {\n type: \"chart\",\n chartType: \"area\",\n series: formatted.series,\n x_axis: formatted.x_axis,\n name: pair+\": Gains\"\n}\nreturn chart;","name":"Pair Gains","showVariable":"true","variables":[{"id":"4b12f34fb5","type":"currency","name":"currency","label":"Currency","value":"NZD_JPY"}]},"d07fbc429a":{"_id":"5d4f71c2efc1027b23fe30ed","id":"d07fbc429a","code":"var pair = variables.currency||\"EUR_USD\";\nvar series = [];\nvar currencies = _.groupBy(trades, function(item) {\n return item.instrument;\n});\nfor (i in currencies) {\n if (i!=pair) {\n delete currencies[i];\n }\n}\n_.each(currencies, function(items, instrument) {\n // Keep the closed trades only\n items = _.filter(items, function(item) {\n return item.close_time;\n });\n var serie = {\n name: instrument,\n data: _.map(items, function(item) {\n return {\n x: item.close_time,\n y: item.pl\n }\n })\n }\n series.push(serie);\n});\nvar formatted = utils.formatter(series, {});\nvar chart = {\n type: \"chart\",\n chartType: \"area\",\n series: formatted.series,\n x_axis: formatted.x_axis,\n name: pair+\": P/L\"\n}\nreturn chart;","name":"Pair P/L","showVariable":"true","variables":[{"id":"42908145af","type":"currency","name":"currency","label":"Currency","value":"AUD_CAD"}]}}