Ruby on Rails
রুবি অন রেইলস
রুবি অন রেইলস (Ruby on Rails) একটি বহুল ব্যবহৃত ওপেন সোর্স ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক। এটি রুবি প্রোগ্রামিং ভাষা ব্যবহার করে তৈরি করা হয়েছে এবং মডেল-ভিউ-কন্ট্রোলার (MVC) আর্কিটেকচারের উপর ভিত্তি করে গঠিত। ডেভিড হেমার দ্বারা তৈরি এই ফ্রেমওয়ার্কটি ২০০৪ সালে প্রথম প্রকাশিত হয়। রুবি অন রেইলস দ্রুত অ্যাপ্লিকেশন তৈরি এবং রক্ষণাবেক্ষণের জন্য পরিচিত।
ইতিহাস
রুবি অন রেইলস ফ্রেমওয়ার্কের যাত্রা শুরু হয় ২০০৪ সালে, যখন ডেভিড হেমার বেসক্যাম্প (Basecamp) নামক একটি প্রোজেক্টের জন্য একটি দ্রুত এবং সহজ ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক তৈরি করার প্রয়োজনীয়তা অনুভব করেন। এর আগে, বিদ্যমান জাভা এবং পিএইচপি ফ্রেমওয়ার্কগুলির জটিলতা এবং সীমাবদ্ধতা তাকে হতাশ করে। তিনি এমন একটি ফ্রেমওয়ার্ক তৈরি করতে চেয়েছিলেন যা ডেভেলপারদের দ্রুত কাজ করতে সাহায্য করবে এবং কোড লেখা সহজ করে তুলবে।
হেমার এর আগে ছোটটক (Smalltalk) এবং লিস্প (Lisp) এর মতো ডায়নামিক প্রোগ্রামিং ভাষা নিয়ে কাজ করেছিলেন, যা রুবি অন রেইলসের নকশার উপর প্রভাব ফেলেছিল। রুবি প্রোগ্রামিং ভাষার নমনীয়তা এবং প্রকাশ ক্ষমতা রুবি অন রেইলসকে আরও শক্তিশালী করে তোলে।
প্রথম রেইলস সংস্করণটি ২০০৪ সালের জুলাই মাসে প্রকাশিত হয় এবং খুব দ্রুত ডেভেলপারদের মধ্যে জনপ্রিয়তা লাভ করে। এর প্রধান কারণ ছিল এর সরলতা, দ্রুত উন্নয়ন প্রক্রিয়া এবং কনভেনশন ওভার কনফিগারেশন (Convention over Configuration) নীতি। এই নীতি অনুযায়ী, রেইলস স্বয়ংক্রিয়ভাবে অনেক সাধারণ কাজ কনফিগার করে দেয়, যার ফলে ডেভেলপারদের কম কোড লিখতে হয়।
বৈশিষ্ট্যসমূহ
রুবি অন রেইলসের কিছু গুরুত্বপূর্ণ বৈশিষ্ট্য নিচে উল্লেখ করা হলো:
- মডেল-ভিউ-কন্ট্রোলার (MVC) আর্কিটেকচার: রুবি অন রেইলস MVC ডিজাইন প্যাটার্ন অনুসরণ করে, যা অ্যাপ্লিকেশনকে তিনটি আন্তঃসংযুক্ত অংশে বিভক্ত করে: মডেল (ডেটা এবং ব্যবসায়িক যুক্তি), ভিউ (ব্যবহারকারীর ইন্টারফেস), এবং কন্ট্রোলার (ব্যবহারকারীর ইনপুট পরিচালনা করে)। মডেল-ভিউ-কন্ট্রোলার
- কনভেনশন ওভার কনফিগারেশন: রেইলস স্বয়ংক্রিয়ভাবে অনেক সাধারণ কাজ কনফিগার করে দেয়, যার ফলে ডেভেলপারদের কম কোড লিখতে হয়।
- ডায়নামিক টাইপিং: রুবি একটি ডায়নামিকভাবে টাইপ করা ভাষা, যা প্রোগ্রামিংকে আরও নমনীয় করে তোলে।
- অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং: রুবি সম্পূর্ণরূপে অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং সমর্থন করে, যা কোডকে আরও মডুলার এবং পুনর্ব্যবহারযোগ্য করে তোলে।
- মেটাপ্রোগ্রামিং: রুবিতে মেটাপ্রোগ্রামিংয়ের সুবিধা রয়েছে, যা কোডকে আরও সংক্ষিপ্ত এবং কার্যকরী করে তোলে।
- অ্যাক্টিভ রেকর্ড: এটি ডাটাবেস অ্যাক্সেসের জন্য একটি শক্তিশালী এবং সহজ ইন্টারফেস সরবরাহ করে। অ্যাক্টিভ রেকর্ড
- রুবি জেমস: রুবি জেমস হলো রুবি প্যাকেজ ম্যানেজার, যা তৃতীয় পক্ষের লাইব্রেরি এবং কোড পুনরায় ব্যবহারের সুবিধা দেয়। রুবি জেমস
- টেস্টিং ফ্রেমওয়ার্ক: রেইলস বিল্ট-ইন টেস্টিং ফ্রেমওয়ার্ক সরবরাহ করে, যা অ্যাপ্লিকেশন কোডের গুণমান নিশ্চিত করতে সাহায্য করে। ইউনিট টেস্টিং
ইনস্টলেশন ও সেটআপ
রুবি অন রেইলস ব্যবহার শুরু করার জন্য প্রথমে আপনার কম্পিউটারে রুবি এবং রেইলস ইনস্টল করতে হবে।
১. রুবি ইনস্টল করুন: আপনার অপারেটিং সিস্টেমের জন্য উপযুক্ত রুবি ইনস্টলার ব্যবহার করে রুবি ইনস্টল করুন। রুবি ইনস্টল করার জন্য রুবি ইনস্টলার ওয়েবসাইটটি দেখতে পারেন।
২. রেইলস ইনস্টল করুন: রুবি ইনস্টল করার পরে, টার্মিনালে নিম্নলিখিত কমান্ডটি ব্যবহার করে রেইলস ইনস্টল করুন:
```bash gem install rails ```
৩. নতুন রেইলস অ্যাপ্লিকেশন তৈরি করুন: রেইলস ইনস্টল করার পরে, আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করে একটি নতুন অ্যাপ্লিকেশন তৈরি করতে পারেন:
```bash rails new my_app ``` এখানে "my_app" হলো আপনার অ্যাপ্লিকেশনের নাম।
৪. অ্যাপ্লিকেশনটি চালান: অ্যাপ্লিকেশন তৈরি করার পরে, আপনি নিম্নলিখিত কমান্ডটি ব্যবহার করে এটি চালাতে পারেন:
```bash cd my_app rails server ``` এটি আপনার অ্যাপ্লিকেশনটিকে লোকাল সার্ভারে চালু করবে, সাধারণত http://localhost:3000 এ।
MVC আর্কিটেকচার
রুবি অন রেইলসের মূল ভিত্তি হলো মডেল-ভিউ-কন্ট্রোলার (MVC) আর্কিটেকচার। এই আর্কিটেকচার অ্যাপ্লিকেশনকে তিনটি প্রধান অংশে ভাগ করে:
- মডেল (Model): মডেল ডাটাবেসের সাথে যোগাযোগ করে এবং ডেটা পরিচালনা করে। এটি ডেটার বৈধতা এবং ব্যবসায়িক যুক্তি ধারণ করে।
- ভিউ (View): ভিউ ব্যবহারকারীর ইন্টারফেস তৈরি করে এবং মডেল থেকে ডেটা প্রদর্শন করে। এটি সাধারণত HTML, CSS, এবং জাভাস্ক্রিপ্ট ব্যবহার করে তৈরি করা হয়।
- কন্ট্রোলার (Controller): কন্ট্রোলার ব্যবহারকারীর ইনপুট গ্রহণ করে, মডেলকে আপডেট করে এবং ভিউকে ডেটা পাঠানোর জন্য নির্দেশ দেয়।
এই তিনটি অংশ একে অপরের সাথে সমন্বিতভাবে কাজ করে একটি সম্পূর্ণ ওয়েব অ্যাপ্লিকেশন তৈরি করে।
উপাদান | ভূমিকা | প্রযুক্তি | মডেল | ডেটা এবং ব্যবসায়িক যুক্তি পরিচালনা | অ্যাক্টিভ রেকর্ড | ভিউ | ব্যবহারকারীর ইন্টারফেস তৈরি এবং ডেটা প্রদর্শন | ERB, Haml, Slim | কন্ট্রোলার | ব্যবহারকারীর ইনপুট গ্রহণ এবং প্রক্রিয়াকরণ | রুবি কোড |
ডাটাবেস এবং অ্যাক্টিভ রেকর্ড
রুবি অন রেইলস অ্যাক্টিভ রেকর্ড নামক একটি অবজেক্ট-রিলেশনাল ম্যাপিং (ORM) লাইব্রেরি ব্যবহার করে ডাটাবেসের সাথে যোগাযোগ করে। অ্যাক্টিভ রেকর্ড ডাটাবেস টেবিলগুলিকে রুবি ক্লাস হিসাবে উপস্থাপন করে, যা ডেটা অ্যাক্সেস এবং ব্যবস্থাপনাকে সহজ করে তোলে।
অ্যাক্টিভ রেকর্ড নিম্নলিখিত সুবিধাগুলি প্রদান করে:
- ডাটাবেস অ্যাবস্ট্রাকশন: অ্যাক্টিভ রেকর্ড ডাটাবেসের নির্দিষ্ট ধরনের উপর নির্ভরতা কমিয়ে দেয়।
- সহজ ডেটা অ্যাক্সেস: রুবি কোড ব্যবহার করে সহজেই ডাটাবেস থেকে ডেটা পড়া, লেখা, আপডেট এবং মুছে ফেলা যায়।
- ডেটা বৈধতা: অ্যাক্টিভ রেকর্ড ডেটার বৈধতা নিশ্চিত করতে সাহায্য করে।
- সম্পর্ক ব্যবস্থাপনা: টেবিলের মধ্যে সম্পর্ক (যেমন ওয়ান-টু-ওয়ান, ওয়ান-টু-মেনি, মেনি-টু-মেনি) সহজেই পরিচালনা করা যায়।
বিভিন্ন ধরনের ডাটাবেস যেমন MySQL, PostgreSQL, SQLite, এবং Oracle এর সাথে রুবি অন রেইলস ব্যবহার করা যায়।
রাউটিং এবং কন্ট্রোলার
রুবি অন রেইলসে রাউটিং হলো ব্যবহারকারীর অনুরোধগুলিকে নির্দিষ্ট কন্ট্রোলার অ্যাকশনগুলির সাথে যুক্ত করার প্রক্রিয়া। রাউটগুলি `config/routes.rb` ফাইলে সংজ্ঞায়িত করা হয়।
উদাহরণস্বরূপ: ```ruby Rails.application.routes.draw do
get 'welcome/index' resources :articles
end ``` এই কোডটি `welcome/index` পাথটিকে `welcome` কন্ট্রোলারের `index` অ্যাকশনের সাথে যুক্ত করে এবং `articles` রিসোর্স তৈরি করে, যা স্বয়ংক্রিয়ভাবে আর্টিকেল সম্পর্কিত বিভিন্ন রুটের জন্য প্রয়োজনীয় কোড তৈরি করে (যেমন `index`, `show`, `new`, `create`, `edit`, `update`, `destroy`)।
কন্ট্রোলারগুলি ব্যবহারকারীর অনুরোধগুলি গ্রহণ করে এবং মডেলের সাথে যোগাযোগ করে ডেটা প্রক্রিয়াকরণ করে। কন্ট্রোলার অ্যাকশনগুলি ভিউকে ডেটা পাঠানোর জন্য প্রস্তুত করে এবং উপযুক্ত ভিউ রেন্ডার করে।
ভিউ এবং টেমপ্লেটিং
রুবি অন রেইলসে ভিউগুলি ব্যবহারকারীর ইন্টারফেস তৈরি করে এবং মডেল থেকে ডেটা প্রদর্শন করে। রেইলস বিভিন্ন ধরনের টেমপ্লেটিং ইঞ্জিন সমর্থন করে, যেমন ERB (Embedded Ruby), Haml, এবং Slim। ERB হলো ডিফল্ট টেমপ্লেটিং ইঞ্জিন।
উদাহরণস্বরূপ, একটি ERB টেমপ্লেট: ```html
<%= @article.title %>
<%= @article.body %>
``` এই কোডটি `@article` অবজেক্টের `title` এবং `body` অ্যাট্রিবিউটগুলি প্রদর্শন করে।
অ্যাসেটস পাইপলাইন
রুবি অন রেইলসের অ্যাসেটস পাইপলাইন হলো স্ট্যাটিক অ্যাসেটগুলি (যেমন CSS, JavaScript, ইমেজ) পরিচালনা করার একটি প্রক্রিয়া। অ্যাসেটস পাইপলাইন নিম্নলিখিত সুবিধাগুলি প্রদান করে:
- অ্যাসেট কম্প্রেশন: অ্যাসেটগুলির আকার হ্রাস করে ওয়েবসাইটের লোডিং সময় কমায়।
- অ্যাসেট মিনিফিকেশন: CSS এবং JavaScript ফাইলগুলি মিনিফাই করে তাদের আকার কমায়।
- ক্যাশিং: ব্রাউজারে অ্যাসেটগুলি ক্যাশ করে বারবার লোডিংয়ের প্রয়োজনীয়তা হ্রাস করে।
সিকিউরিটি
রুবি অন রেইলস ওয়েব অ্যাপ্লিকেশনগুলির নিরাপত্তা নিশ্চিত করার জন্য বিভিন্ন সুরক্ষা বৈশিষ্ট্য সরবরাহ করে। এর মধ্যে কয়েকটি হলো:
- ক্রস-সাইট স্ক্রিপ্টিং (XSS) সুরক্ষা: রেইলস স্বয়ংক্রিয়ভাবে XSS আক্রমণ থেকে রক্ষা করে।
- ক্রস-সাইট রিকোয়েস্ট ফোরजरी (CSRF) সুরক্ষা: রেইলস CSRF আক্রমণ থেকে রক্ষা করার জন্য টোকেন ব্যবহার করে।
- এসকিউএল ইনজেকশন সুরক্ষা: অ্যাক্টিভ রেকর্ড এসকিউএল ইনজেকশন আক্রমণ থেকে রক্ষা করে।
- প্যারামিটার স্যানিটাইজেশন: রেইলস ব্যবহারকারীর ইনপুট স্যানিটাইজ করে ক্ষতিকারক ডেটা ফিল্টার করে।
ডেপ্লয়মেন্ট
রুবি অন রেইলস অ্যাপ্লিকেশন ডেপ্লয় করার জন্য বিভিন্ন প্ল্যাটফর্ম এবং পরিষেবা ব্যবহার করা যেতে পারে, যেমন Heroku, AWS, এবং DigitalOcean। ডেপ্লয়মেন্ট প্রক্রিয়া সাধারণত নিম্নলিখিত ধাপগুলি অনুসরণ করে:
১. অ্যাপ্লিকেশন কোড প্রস্তুত করুন। ২. ডাটাবেস সেটআপ করুন। ৩. প্রয়োজনীয় জেমগুলি ইনস্টল করুন। ৪. অ্যাপ্লিকেশন সার্ভার কনফিগার করুন (যেমন Puma, Unicorn)। ৫. অ্যাপ্লিকেশনটি প্ল্যাটফর্মে আপলোড করুন এবং কনফিগার করুন।
উন্নত বিষয়সমূহ
- ব্যাকগ্রাউন্ড জব: ব্যাকগ্রাউন্ডে দীর্ঘ সময় ধরে চলতে থাকা টাস্কগুলি পরিচালনা করার জন্য রুবি অন রেইলস Sidekiq, Resque এর মতো লাইব্রেরি ব্যবহার করে। ব্যাকগ্রাউন্ড জব
- এপিআই তৈরি: রুবি অন রেইলস ব্যবহার করে সহজেই RESTful এপিআই তৈরি করা যায়। RESTful API
- ওয়েবসকেট: রিয়েল-টাইম কমিউনিকেশনের জন্য রুবি অন রেইলস Action Cable ব্যবহার করে ওয়েবসকেট সমর্থন করে। ওয়েবসকেট
- টেস্টিং: রুবি অন রেইলসে RSpec, Minitest এর মতো টেস্টিং ফ্রেমওয়ার্ক ব্যবহার করে অ্যাপ্লিকেশন কোডের গুণমান নিশ্চিত করা যায়। টেস্টিং
- কন্টিনিউয়াস ইন্টিগ্রেশন এবং কন্টিনিউয়াস ডেলিভারি (CI/CD): রুবি অন রেইলস অ্যাপ্লিকেশনগুলির জন্য CI/CD পাইপলাইন তৈরি করে স্বয়ংক্রিয়ভাবে কোড পরীক্ষা এবং ডেপ্লয়মেন্ট করা যায়। CI/CD
উপসংহার
রুবি অন রেইলস একটি শক্তিশালী এবং নমনীয় ওয়েব অ্যাপ্লিকেশন ফ্রেমওয়ার্ক। এর সরলতা, দ্রুত উন্নয়ন প্রক্রিয়া, এবং শক্তিশালী বৈশিষ্ট্যগুলি এটিকে ডেভেলপারদের মধ্যে জনপ্রিয় করে তুলেছে। আপনি যদি একটি নতুন ওয়েব অ্যাপ্লিকেশন তৈরি করতে চান, তাহলে রুবি অন রেইলস একটি চমৎকার পছন্দ হতে পারে। ওয়েব ডেভেলপমেন্ট ফ্রেমওয়ার্ক প্রোগ্রামিং ভাষা ডাটাবেস ম্যানেজমেন্ট ওপেন সোর্স MVC আর্কিটেকচার অ্যাক্টিভ রেকর্ড রুবি জেমস টেস্টিং ফ্রেমওয়ার্ক সিকিউরিটি ডেপ্লয়মেন্ট ব্যাকগ্রাউন্ড জব RESTful API ওয়েবসকেট CI/CD ইউনিট টেস্টিং অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ডাটাবেস ডিজাইন ডাটা মডেলিং সফটওয়্যার ইঞ্জিনিয়ারিং অ্যাপ্লিকেশন ডেভেলপমেন্ট সার্ভার সাইড প্রোগ্রামিং ফ্রন্ট এন্ড ডেভেলপমেন্ট ডাটা স্ট্রাকচার অ্যালগরিদম ভলিউম বিশ্লেষণ টেকনিক্যাল বিশ্লেষণ কৌশল ঝুঁকি ব্যবস্থাপনা ফিনান্সিয়াল মডেলিং পোর্টফোলিও অপটিমাইজেশন মার্কেট ট্রেন্ড অর্থনৈতিক সূচক বিনিয়োগ কৌশল ট্রেডিং সাইকোলজি বৈশ্বিক বাজার মুদ্রা বিনিময় হার সুদের হার মুদ্রাস্ফীতি বাজারের পূর্বাভাস ঝুঁকি মূল্যায়ন পোর্টফোলিও ডাইভারসিফিকেশন দীর্ঘমেয়াদী বিনিয়োগ স্বল্পমেয়াদী ট্রেডিং ডে-ট্রেডিং সুইং ট্রেডিং পজিশন ট্রেডিং স্কাল্পিং অটোমেটেড ট্রেডিং অ্যালগরিদমিক ট্রেডিং হাই-ফ্রিকোয়েন্সি ট্রেডিং ডার্ক পুল হেজিং আর্বিট্রেজ লেভারেজ মার্জিন ট্রেডিং ফান্ডামেন্টাল বিশ্লেষণ টেকনিক্যাল ইন্ডিকেটর চার্ট প্যাটার্ন ক্যান্ডেলস্টিক প্যাটার্ন ট্রেন্ড লাইন সাপোর্ট এবং রেসিস্টেন্স মুভিং এভারেজ আরএসআই এমএসিডি ফিবোনাচি রিট্রেসমেন্ট বোলিঙ্গার ব্যান্ড ভলিউম ওপেন ইন্টারেস্ট মার্কেট ডেপথ অর্ডার ফ্লো টাইম এবং সেলস ভলিউম ওয়েটেড এভারেজ প্রাইস অ্যাকুমুলেশন/ডিস্ট্রিবিউশন মানি ফ্লো ইনডেক্স চাইকিন মানি ফ্লো অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ডাটাবেস ডিজাইন ডাটা মডেলিং সফটওয়্যার ইঞ্জিনিয়ারিং অ্যাপ্লিকেশন ডেভেলপমেন্ট সার্ভার সাইড প্রোগ্রামিং ফ্রন্ট এন্ড ডেভেলপমেন্ট ডাটা স্ট্রাকচার অ্যালগরিদম ভলিউম বিশ্লেষণ টেকনিক্যাল বিশ্লেষণ কৌশল ঝুঁকি ব্যবস্থাপনা ফিনান্সিয়াল মডেলিং পোর্টফোলিও অপটিমাইজেশন মার্কেট ট্রেন্ড অর্থনৈতিক সূচক বিনিয়োগ কৌশল ট্রেডিং সাইকোলজি বৈশ্বিক বাজার মুদ্রা বিনিময় হার সুদের হার মুদ্রাস্ফীতি বাজারের পূর্বাভাস ঝুঁকি মূল্যায়ন পোর্টফোলিও ডাইভারসিফিকেশন দীর্ঘমেয়াদী বিনিয়োগ স্বল্পমেয়াদী ট্রেডিং ডে-ট্রেডিং সুইং ট্রেডিং পজিশন ট্রেডিং স্কাল্পিং অটোমেটেড ট্রেডিং অ্যালগরিদমিক ট্রেডিং হাই-ফ্রিকোয়েন্সি ট্রেডিং ডার্ক পুল হেজিং আর্বিট্রেজ লেভারেজ মার্জিন ট্রেডিং ফান্ডামেন্টাল বিশ্লেষণ টেকনিক্যাল ইন্ডিকেটর চার্ট প্যাটার্ন ক্যান্ডেলস্টিক প্যাটার্ন ট্রেন্ড লাইন সাপোর্ট এবং রেসিস্টেন্স মুভিং এভারেজ আরএসআই এমএসিডি ফিবোনাচি রিট্রেসমেন্ট বোলিঙ্গার ব্যান্ড ভলিউম ওপেন ইন্টারেস্ট মার্কেট ডেপথ অর্ডার ফ্লো টাইম এবং সেলস ভলিউম ওয়েটেড এভারেজ প্রাইস অ্যাকুমুলেশন/ডিস্ট্রিবিউশন মানি ফ্লো ইনডেক্স চাইকিন মানি ফ্লো অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং ডাটাবেস ডিজাইন ডাটা মডেলিং সফটওয়্যার ইঞ্জিনিয়ারিং অ্যাপ্লিকেশন ডেভেলপমেন্ট সার্ভার সাইড প্রোগ্রামিং ফ্রন্ট এন্ড ডেভেলপমেন্ট ডাটা স্ট্রাকচার অ্যালগরিদম ভলিউম বিশ্লেষণ টেকনিক্যাল বিশ্লেষণ কৌশল ঝুঁকি ব্যবস্থাপনা ফিনান্সিয়াল মডেলিং পোর্টফোলিও অপটিমাইজেশন মার্কেট ট্রেন্ড অর্থনৈতিক সূচক বিনিয়োগ কৌশল ট্রেডিং সাইকোলজি বৈশ্বিক বাজার মুদ্রা বিনিময় হার সুদের হার মুদ্রাস্ফীতি বাজারের পূর্বাভাস ঝুঁকি মূল্যায়ন পোর্টফোলিও ডাইভারসিফিকেশন দীর্ঘমেয়াদী বিনিয়োগ স্বল্পমেয়াদী ট্রেডিং ডে-ট্রেডিং সুইং ট্রেডিং পজিশন ট্রেডিং স্কাল্পিং অটোমেটেড ট্রেডিং অ্যালগরিদমিক ট্রেডিং হাই-ফ্রিকোয়েন্সি ট্রেডিং ডার্ক পুল হেজিং আর্বিট্রেজ লেভারেজ মার্জিন ট্রেডিং ফান্ডামেন্টাল বিশ্লেষণ টেকনিক্যাল ইন্ডিকেটর চার্ট প্যাটার্ন ক্যান্ডেলস্টিক প্যাটার্ন ট্রেন্ড লাইন সাপোর্ট এবং রেসিস্টেন্স মুভিং এভারেজ আরএসআই এমএসিডি ফিবোনাচি রিট্রেসমেন্ট বোলিঙ্গার ব্যান্ড ভলিউম ওপেন ইন্টারেস্ট মার্কেট ডেপথ অর্ডার ফ্লো টাইম এবং সেলস ভলিউম ওয়েটেড এভারেজ প্রাইস অ্যাকুমুলেশন/ডিস্ট্রিবিউশন মানি ফ্লো ইনডেক্স চাইকিন মানি ফ্লো
এখনই ট্রেডিং শুরু করুন
IQ Option-এ নিবন্ধন করুন (সর্বনিম্ন ডিপোজিট $10) Pocket Option-এ অ্যাকাউন্ট খুলুন (সর্বনিম্ন ডিপোজিট $5)
আমাদের সম্প্রদায়ে যোগ দিন
আমাদের টেলিগ্রাম চ্যানেলে যোগ দিন @strategybin এবং পান: ✓ দৈনিক ট্রেডিং সংকেত ✓ একচেটিয়া কৌশলগত বিশ্লেষণ ✓ বাজারের প্রবণতা সম্পর্কে বিজ্ঞপ্তি ✓ নতুনদের জন্য শিক্ষামূলক উপকরণ