I'm fairly new to trading, and since my background is in Computer Science, I thought I'd leverage it by creating a Day Trading Script using ML (Tensor Flow). If anybody has any more general recommendations I'd be very grateful, but for now I just need a good source of tick data. I was looking at TickData, but they're quite expensive. Then I looked at Kibot which is SIGNIFICANTLY cheaper, but I've heard their fairly inaccurate when it comes to tick data. Can anybody recommend a source of historical tick data? I don't need data on EVERY symbol, just a few of the most commonly traded ones to get me started.
You're not going to find free/cheap tick data that is also good. There are numerous things that go into "good data". For example, data should be adjusted for splits and dividends. You should also decide what kind of bucketing you will use for your data. There are numerous ways to turn ticks into usable bars. A good source will be your broker. Get a membership at Interactive Brokers or another broker that offers tick level data, deposit the required amount to get it, pay for your memberships, and use that. You should base your strategies off of the data you will receive from your broker.
<script type='text/javascript' src='https://www.fundthewall.com/wp-cont...js_composer_front.min.js?ver=5.1.1'></script> <script type="text/javascript"> (function ($) { window.addEventListener('load', function give_ga_purchase(event) { window.removeEventListener('load', give_ga_purchase, false); var ga = window[window['GoogleAnalyticsObject'] || 'ga']; document.cookie = 'give_source=' + get_parameter('utm_source'); document.cookie = 'give_medium=' + get_parameter('utm_medium'); document.cookie = 'give_campaign=' + get_parameter('utm_campaign'); if ('function' === typeof ga) { // Load the Ecommerce plugin. ga('require', 'ec'); var give_forms = $('form.give-form'); // Loop through each form on page and provide an impression. give_forms.each(function (index, value) { var form_id = $(this).find('input[name="give-form-id"]').val(); var form_title = $(this).find('input[name="give-form-title"]').val(); ga('ec:addImpression', { impressionFieldObject. 'id': form_id, 'name': form_title, 'category': 'Donations', 'list': 'Donation Forms', 'position': index + 1 }); ga('ec:setAction', 'detail'); ga('send', 'event', 'Fundraising', 'Donation Form View', form_title, {'nonInteraction': 1}); }); give_forms.on('submit', function (event) { var form_id = $(this).find('input[name="give-form-id"]').val(); var form_title = $(this).find('input[name="give-form-title"]').val(); var form_gateway = $(this).find('input[name="give-gateway"]').val(); ga('ec:addProduct', { 'id': form_id, 'name': form_title, 'category': 'Donations', 'brand': 'Fundraising', 'price': $(this).find('.give-amount-hidden').val(), 'quantity': 1 }); ga('ec:setAction', 'add'); ga('send', 'event', 'Fundraising', 'Donation Form Begin Checkout', form_title); ga('ec:setAction', 'checkout', { 'option': form_gateway // Payment method }); ga('send', 'event', 'Fundraising', 'Donation Form Submitted', form_title); }); } }, false);
start recording yourself to avoid any faux data. a tensorflow like array object is an excellent choice (symbols[]; timelocal[]; bid[];ask[] ;news[]; space_time[][][][][][][][] different data structures possible in tensors. would also work in other languages. use the clock cyles, don't wait for incoming ticks to wake up or listen to democrat funded propaganda about the speed of light and theoretical upper bounds on latency.
You only need tick data if you are planning to get involved in micro-structure games and my prior would be that you don't (not that you can easily get the types of latencies required anyways). Thus you probably can get away with 1 min bars or similar type of data.