Reinforcement Learning for Trading Strategies

بواسطة: Coursera

Overview

In the final course from the Machine Learning for Trading specialization, you will be introduced to reinforcement learning (RL) and the benefits of using reinforcement learning in trading strategies. You will learn how RL has been integrated with neural networks and review LSTMs and how they can be applied to time series data. By the end of the course, you will be able to build trading strategies using reinforcement learning, differentiate between actor-based policies and value-based policies, and incorporate RL into a momentum trading strategy.

To be successful in this course, you should have advanced competency in Python programming and familiarity with pertinent libraries for machine learning, such as Scikit-Learn, StatsModels, and Pandas. Experience with SQL is recommended. You should have a background in statistics (expected values and standard deviation, Gaussian distributions, higher moments, probability, linear regressions) and foundational knowledge of financial markets (equities, bonds, derivatives, market structure, hedging).

Syllabus

  • Introduction to Course and Reinforcement Learning
    • In this module, reinforcement learning is introduced at a high level. The history and evolution of reinforcement learning is presented, including key concepts like value and policy iteration. Also, the benefits and examples of using reinforcement learning in trading strategies is described. We also introduce LSTM and AutoML as additional tools in your toolkit to use in implementing trading strategies.
  • Neural Network Based Reinforcement Learning
    • In the previous module, reinforcement learning was discussed before neural networks were introduced. In this module, we look at how reinforcement learning has been integrated with neural networks. We also look at LSTMs and how they can be applied to time series data.
  • Portfolio Optimization
    • In this module we discuss the practical steps required to create a reinforcement learning trading system. Also, we introduce AutoML, a powerful service on Google Cloud Platform for training machine learning models with minimal coding.

Taught by

Jack Farmer and Ram Seshadri

Reinforcement Learning for Trading Strategies
الذهاب الي الدورة

Reinforcement Learning for Trading Strategies

بواسطة: Coursera

  • Coursera
  • مجانية
  • الإنجليزية
  • متاح شهادة
  • متاح في أي وقت
  • intermediate
  • English, Arabic, French, Portuguese, German, Thai, Indonesian, Spanish, Kazakh, Hindi, Russian, Swedish, Korean, Greek, Italian, Chinese, Ukrainian, Japanese, Polish, Dutch, Turkish
8.1.2PHP Version357msRequest Duration2MBMemory UsageGET ar/الدورات/{slug}Route
    • Booting (229ms)
    • Application (127ms)
    • 1 x Booting (64.14%)
      228.87ms
      1 x Application (35.62%)
      127.10ms
      14 templates were rendered
      • public.courses.show (resources/views/public/courses/show.blade.php)3bladefile
        Params
        0
        course
        1
        links
        2
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.courses.partials.details (resources/views/public/courses/partials/details.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.breadcrumbs (resources/views/public/courses/partials/breadcrumbs.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.courses.partials.heading (resources/views/public/courses/partials/heading.blade.php)7bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        classes
      • public.layouts.main (resources/views/public/layouts/main.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.meta (resources/views/public/layouts/partials/meta.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.layouts.partials.navbar (resources/views/public/layouts/partials/navbar.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.links (resources/views/public/auth/profile/partials/links.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.auth.profile.partials.link (resources/views/public/auth/profile/partials/link.blade.php)8bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
        6
        route
        7
        title
      • public.layouts.partials.flash-session (resources/views/public/layouts/partials/flash-session.blade.php)6bladefile
        Params
        0
        __env
        1
        app
        2
        errors
        3
        course
        4
        links
        5
        config
      uri
      GET ar/الدورات/{slug}
      middleware
      web, localize:ar
      controller
      App\Http\Controllers\CourseController@show
      as
      ar.courses.show
      namespace
      prefix
      /ar
      where
      file
      app/Http/Controllers/CourseController.php:17-35
      6 statements were executed4.16ms
      • select * from `courses` where `slug_ar` = 'reinforcement-learning-for-trading-strategies' limit 1
        3.02ms/app/Http/Controllers/CourseController.php:20corspedia
        Metadata
        Bindings
        • 0. reinforcement-learning-for-trading-strategies
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:20
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • update `courses` set `visitors` = `visitors` + 1, `courses`.`updated_at` = '2025-05-15 08:54:59' where `id` = 415
        380μs/app/Http/Controllers/CourseController.php:21corspedia
        Metadata
        Bindings
        • 0. 2025-05-15 08:54:59
        • 1. 415
        Backtrace
        • 17. /app/Http/Controllers/CourseController.php:21
        • 18. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 19. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 20. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `topic_id`, `slug_en`, `slug_ar` from `subjects` where `subjects`.`id` in (62)
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select `id`, `name_en`, `name_ar`, `slug_en`, `slug_ar` from `topics` where `topics`.`id` in (1)
        160μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 25. /app/Http/Controllers/CourseController.php:23
        • 26. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 27. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 28. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 29. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `providers` where `providers`.`id` in (2) and `providers`.`deleted_at` is null
        180μs/app/Http/Controllers/CourseController.php:23corspedia
        Metadata
        Backtrace
        • 20. /app/Http/Controllers/CourseController.php:23
        • 21. /vendor/laravel/framework/src/Illuminate/Routing/Controller.php:54
        • 22. /vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php:43
        • 23. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:260
        • 24. /vendor/laravel/framework/src/Illuminate/Routing/Route.php:205
      • select * from `html_files` where `html_files`.`id` = 409 limit 1
        240μs/app/Models/Course.php:84corspedia
        Metadata
        Bindings
        • 0. 409
        Backtrace
        • 21. /app/Models/Course.php:84
        • 28. view::public.courses.show:29
        • 30. /vendor/laravel/framework/src/Illuminate/Filesystem/Filesystem.php:125
        • 31. /vendor/laravel/framework/src/Illuminate/View/Engines/PhpEngine.php:58
        • 32. /vendor/laravel/framework/src/Illuminate/View/Engines/CompilerEngine.php:72
      App\Models\HtmlFile
      1
      App\Models\Provider
      1
      App\Models\Topic
      1
      App\Models\Subject
      1
      App\Models\Course
      1
        _token
        4RcZpI31aAXroEfCjvxCCRYUMQigMH92Og6YUL1Y
        locale
        ar
        _previous
        array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/reinfo...
        _flash
        array:2 [ "old" => [] "new" => [] ]
        PHPDEBUGBAR_STACK_DATA
        []
        path_info
        /ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/reinforcement-learning-for-trading-strategies
        status_code
        200
        
        status_text
        OK
        format
        html
        content_type
        text/html; charset=UTF-8
        request_query
        []
        
        request_request
        []
        
        request_headers
        0 of 0
        array:24 [ "cf-ipcountry" => array:1 [ 0 => "US" ] "cf-connecting-ip" => array:1 [ 0 => "18.188.173.56" ] "cdn-loop" => array:1 [ 0 => "cloudflare; loops=1" ] "x-forwarded-proto" => array:1 [ 0 => "https" ] "x-forwarded-for" => array:1 [ 0 => "18.188.173.56" ] "sec-fetch-site" => array:1 [ 0 => "none" ] "accept" => array:1 [ 0 => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" ] "user-agent" => array:1 [ 0 => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" ] "upgrade-insecure-requests" => array:1 [ 0 => "1" ] "sec-ch-ua-platform" => array:1 [ 0 => ""Windows"" ] "sec-ch-ua-mobile" => array:1 [ 0 => "?0" ] "sec-ch-ua" => array:1 [ 0 => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" ] "cache-control" => array:1 [ 0 => "no-cache" ] "pragma" => array:1 [ 0 => "no-cache" ] "sec-fetch-dest" => array:1 [ 0 => "document" ] "cf-ray" => array:1 [ 0 => "940169e9dae68e5c-ORD" ] "accept-encoding" => array:1 [ 0 => "gzip, br" ] "priority" => array:1 [ 0 => "u=0, i" ] "sec-fetch-user" => array:1 [ 0 => "?1" ] "sec-fetch-mode" => array:1 [ 0 => "navigate" ] "cf-visitor" => array:1 [ 0 => "{"scheme":"https"}" ] "host" => array:1 [ 0 => "www.corspedia.com" ] "content-length" => array:1 [ 0 => "" ] "content-type" => array:1 [ 0 => "" ] ]
        request_server
        0 of 0
        array:50 [ "USER" => "www-data" "HOME" => "/var/www" "HTTP_CF_IPCOUNTRY" => "US" "HTTP_CF_CONNECTING_IP" => "18.188.173.56" "HTTP_CDN_LOOP" => "cloudflare; loops=1" "HTTP_X_FORWARDED_PROTO" => "https" "HTTP_X_FORWARDED_FOR" => "18.188.173.56" "HTTP_SEC_FETCH_SITE" => "none" "HTTP_ACCEPT" => "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7" "HTTP_USER_AGENT" => "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)" "HTTP_UPGRADE_INSECURE_REQUESTS" => "1" "HTTP_SEC_CH_UA_PLATFORM" => ""Windows"" "HTTP_SEC_CH_UA_MOBILE" => "?0" "HTTP_SEC_CH_UA" => ""Chromium";v="130", "HeadlessChrome";v="130", "Not?A_Brand";v="99"" "HTTP_CACHE_CONTROL" => "no-cache" "HTTP_PRAGMA" => "no-cache" "HTTP_SEC_FETCH_DEST" => "document" "HTTP_CF_RAY" => "940169e9dae68e5c-ORD" "HTTP_ACCEPT_ENCODING" => "gzip, br" "HTTP_PRIORITY" => "u=0, i" "HTTP_SEC_FETCH_USER" => "?1" "HTTP_SEC_FETCH_MODE" => "navigate" "HTTP_CF_VISITOR" => "{"scheme":"https"}" "HTTP_HOST" => "www.corspedia.com" "REDIRECT_STATUS" => "200" "SERVER_NAME" => "corspedia.com" "SERVER_PORT" => "443" "SERVER_ADDR" => "141.95.147.152" "REMOTE_USER" => "" "REMOTE_PORT" => "62848" "REMOTE_ADDR" => "108.162.216.228" "SERVER_SOFTWARE" => "nginx/1.18.0" "GATEWAY_INTERFACE" => "CGI/1.1" "HTTPS" => "on" "REQUEST_SCHEME" => "https" "SERVER_PROTOCOL" => "HTTP/2.0" "DOCUMENT_ROOT" => "/var/www/corspedia/public" "DOCUMENT_URI" => "/index.php" "REQUEST_URI" => "/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/reinforcement-learning-for-trading-strategies" "SCRIPT_NAME" => "/index.php" "CONTENT_LENGTH" => "" "CONTENT_TYPE" => "" "REQUEST_METHOD" => "GET" "QUERY_STRING" => "" "SCRIPT_FILENAME" => "/var/www/corspedia/public/index.php" "PATH_INFO" => "" "FCGI_ROLE" => "RESPONDER" "PHP_SELF" => "/index.php" "REQUEST_TIME_FLOAT" => 1747299299.1043 "REQUEST_TIME" => 1747299299 ]
        request_cookies
        []
        
        response_headers
        0 of 0
        array:5 [ "content-type" => array:1 [ 0 => "text/html; charset=UTF-8" ] "cache-control" => array:1 [ 0 => "no-cache, private" ] "date" => array:1 [ 0 => "Thu, 15 May 2025 08:54:59 GMT" ] "set-cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImVZQ0ZHU28ydjdvQW80UXhtL2NMVVE9PSIsInZhbHVlIjoiNnpFUkpkYXA0cGxmNXEyZkFUR1lXTWpLRzB5RitoZXZIVStTcFRpSTZyWStvemdCdll0MlVKODVqOGROekRYTGNyNi94ZW1aaFJYOWxiN2g3RC9OU3FUQWJ2L1JFQjBVeDN2bGVFNDdTdnViN1hVb2dTb2ZGWUpITmRFaEFSQTYiLCJtYWMiOiJkMDIzMDQyMWZlMzU5MTQ2YjUxN2Q0MDIxZTllZmQ3YjE0ZWNjNTY3NmM5NTZlZjMxZTZjNzgwMGI4MzBjNGIxIiwidGFnIjoiIn0%3D; expires=Thu, 15 May 2025 10:54:59 GMT; Max-Age=7200; path=/; samesite=laxXSRF-TOKEN=eyJpdiI6ImVZQ0ZHU28ydjdvQW80UXhtL2NMVVE9PSIsInZhbHVlIjoiNnpFUkpkYXA0cGxmNXEyZkFUR1lXTWpLRzB5RitoZXZIVStTcFRpSTZyWStvemdCdll0MlVKODVqOGROekRYTGNyNi94Z" 1 => "laravel_session=eyJpdiI6InpkVEpNR1ZMUy9CVFc0OVFrUnBWekE9PSIsInZhbHVlIjoiNENmbWdrak9rdHZCb0lma1MvMlJFRnVqNlhmcVMxaE5TZnJnY29HY2RSRkZYbElhSkFvNndCZUY3eUtsTzZsTEk0UmtONTFTZUxKWWpUVDd0M210a2plRFMyZ2JMb3NmRjUzVmVpREhQc3hTRGRnUDlHVnkwUG4wM25QTEJDbXkiLCJtYWMiOiJhZDczNmEzZmY0MGMxZGJlZDA0MmQ3OWRjY2VlZTA3ODQ2ODIxZTg4NWFhNWY5NTk3Y2FkNDc2YTVhNTc2MjFhIiwidGFnIjoiIn0%3D; expires=Thu, 15 May 2025 10:54:59 GMT; Max-Age=7200; path=/; httponly; samesite=laxlaravel_session=eyJpdiI6InpkVEpNR1ZMUy9CVFc0OVFrUnBWekE9PSIsInZhbHVlIjoiNENmbWdrak9rdHZCb0lma1MvMlJFRnVqNlhmcVMxaE5TZnJnY29HY2RSRkZYbElhSkFvNndCZUY3eUtsTzZsTEk0" ] "Set-Cookie" => array:2 [ 0 => "XSRF-TOKEN=eyJpdiI6ImVZQ0ZHU28ydjdvQW80UXhtL2NMVVE9PSIsInZhbHVlIjoiNnpFUkpkYXA0cGxmNXEyZkFUR1lXTWpLRzB5RitoZXZIVStTcFRpSTZyWStvemdCdll0MlVKODVqOGROekRYTGNyNi94ZW1aaFJYOWxiN2g3RC9OU3FUQWJ2L1JFQjBVeDN2bGVFNDdTdnViN1hVb2dTb2ZGWUpITmRFaEFSQTYiLCJtYWMiOiJkMDIzMDQyMWZlMzU5MTQ2YjUxN2Q0MDIxZTllZmQ3YjE0ZWNjNTY3NmM5NTZlZjMxZTZjNzgwMGI4MzBjNGIxIiwidGFnIjoiIn0%3D; expires=Thu, 15-May-2025 10:54:59 GMT; path=/XSRF-TOKEN=eyJpdiI6ImVZQ0ZHU28ydjdvQW80UXhtL2NMVVE9PSIsInZhbHVlIjoiNnpFUkpkYXA0cGxmNXEyZkFUR1lXTWpLRzB5RitoZXZIVStTcFRpSTZyWStvemdCdll0MlVKODVqOGROekRYTGNyNi94Z" 1 => "laravel_session=eyJpdiI6InpkVEpNR1ZMUy9CVFc0OVFrUnBWekE9PSIsInZhbHVlIjoiNENmbWdrak9rdHZCb0lma1MvMlJFRnVqNlhmcVMxaE5TZnJnY29HY2RSRkZYbElhSkFvNndCZUY3eUtsTzZsTEk0UmtONTFTZUxKWWpUVDd0M210a2plRFMyZ2JMb3NmRjUzVmVpREhQc3hTRGRnUDlHVnkwUG4wM25QTEJDbXkiLCJtYWMiOiJhZDczNmEzZmY0MGMxZGJlZDA0MmQ3OWRjY2VlZTA3ODQ2ODIxZTg4NWFhNWY5NTk3Y2FkNDc2YTVhNTc2MjFhIiwidGFnIjoiIn0%3D; expires=Thu, 15-May-2025 10:54:59 GMT; path=/; httponlylaravel_session=eyJpdiI6InpkVEpNR1ZMUy9CVFc0OVFrUnBWekE9PSIsInZhbHVlIjoiNENmbWdrak9rdHZCb0lma1MvMlJFRnVqNlhmcVMxaE5TZnJnY29HY2RSRkZYbElhSkFvNndCZUY3eUtsTzZsTEk0" ] ]
        session_attributes
        0 of 0
        array:5 [ "_token" => "4RcZpI31aAXroEfCjvxCCRYUMQigMH92Og6YUL1Y" "locale" => "ar" "_previous" => array:1 [ "url" => "https://www.corspedia.com/ar/%D8%A7%D9%84%D8%AF%D9%88%D8%B1%D8%A7%D8%AA/reinforcement-learning-for-trading-strategies" ] "_flash" => array:2 [ "old" => [] "new" => [] ] "PHPDEBUGBAR_STACK_DATA" => [] ]