krishnavavelu/alice_blue

ساخت وبلاگ

این تعهد متعلق به هیچ شعبه ای در این مخزن نیست و ممکن است متعلق به یک چنگال در خارج از مخزن باشد.

نام در حال استفاده

یک برچسب در حال حاضر با نام شاخه ارائه شده وجود دارد. بسیاری از دستورات GIT نام برچسب و شاخه را می پذیرند ، بنابراین ایجاد این شاخه ممکن است باعث رفتار غیر منتظره شود. آیا مطمئن هستید که می خواهید این شاخه را ایجاد کنید؟

  • محلی
  • مکاشه

با استفاده از URL وب از Git یا Checkout با SVN استفاده کنید.

با CLI رسمی ما سریع کار کنید. بیشتر بدانید.

ورود به سیستم لازم

لطفاً برای استفاده از برنامه های کد وارد سیستم شوید.

راه اندازی دسک تاپ GitHub

اگر هیچ اتفاقی نمی افتد ، GitHub Desktop را بارگیری کنید و دوباره امتحان کنید.

راه اندازی دسک تاپ GitHub

اگر هیچ اتفاقی نمی افتد ، GitHub Desktop را بارگیری کنید و دوباره امتحان کنید.

راه اندازی Xcode

اگر هیچ اتفاقی نمی افتد ، Xcode را بارگیری کنید و دوباره امتحان کنید.

راه اندازی کد ویژوال استودیو

فضای کد شما یک بار آماده خواهد شد.

مشکلی برای تهیه فضای کدگذاری شما وجود داشت ، لطفاً دوباره امتحان کنید.

آخرین تعهد

آمار git

فایل ها

بارگیری آخرین اطلاعات متعهد انجام نشد.

readme. md

Python SDK رسمی برای آلیس آبی API

کتابخانه رسمی پایتون برای برقراری ارتباط با API های آبی آلیس.

کتابخانه آلیس آبی پایتون یک بسته بندی آسان برای استفاده از API های HTTPS را فراهم می کند.

تماس های HTTP به روش ها تبدیل شده و پاسخ های JSON به اشیاء سازگار با پایتون پیچیده می شوند.

اتصالات WebSocket به طور خودکار در داخل کتابخانه انجام می شود.

  • نویسنده: Krishnavelu شریک استراتژیک آلیس آبی است که مسئول این Git است.
  • تجارت ALICE Blue API برای اعضای غیرمجاز رایگان است. این را دنبال کنید تا API رایگان شود.

این ماژول از طریق PIP نصب شده است:

برای به روزرسانی تاسیسات موجود:

شروع با API

فقط یک کلاس در کل کتابخانه وجود دارد: آلیسبلو. از روش static login_and_get_sessionid () برای بازیابی شناسه جلسه از سرور آلیس آبی استفاده می شود. شناسه جلسه به مدت 24 ساعت معتبر است. با شناسه جلسه ، می توانید یک شیء AliceBlue را فوری کنید. در حالت ایده آل فقط باید هر روز یک بار شناسه جلسه ایجاد کنید. پس از ایجاد شناسه جلسه جدید ، در یک مکان موقت ذخیره می شود. دفعه بعد ، از همان شناسه جلسه استفاده می شود.

مستندات اصلی API REST در اینجا موجود است.

کل کتابخانه برای اشکال زدایی به ماژول ورود به سیستم پایتون مجهز شده است. در صورت نیاز به اطلاعات اشکال زدایی بیشتر ، ورود به سیستم را با استفاده از کد زیر فعال کنید.

دریافت API ID و راز API

API_SECRET برای هر حساب بی نظیر است. شما باید تجارت API را فعال کنید و API_SECRET را از آلیس آبی دریافت کنید.

  1. ورود به کنسول توسعه دهنده.
  2. روی "ایجاد برنامه جدید" کلیک کنید.
  3. همانطور که دوست دارید "نام برنامه" را وارد کنید."url redirect" و "url back" را به عنوان https://ant. aliceblueonline.com/plugin/callback وارد کنید.
  4. روی "ذخیره" کلیک کنید.
  5. "کد برنامه" و "راز برنامه" را کپی کنید. برای تولید شناسه جلسه به اینها نیاز خواهید داشت.

دریافت شناسه جلسه

  1. وارد کردن alice_blue
  1. با استفاده از عملکرد login_and_get_sessionid () با نام کاربری ، رمز عبور ، 2FA (2FA اکنون سال تولد است) ، APP_ID و API_Secret ایجاد کنید.

مشکل گرفتن نشانه دسترسی

اگر در حال دریافت مشکل دسترسی هستید ، مطمئن شوید که موارد زیر صحیح است.

  1. نام کاربری.
  2. کلمه عبور.
  3. 2FA
  4. راز API.
  5. شناسه برنامه

حتی پس از تأیید همه اینها ، اگر با مشکل روبرو هستید ، با مراقبت از مشتری آلیس تماس بگیرید. آنها باید دسترسی API را در پایان خود فعال کنند. برای خطای OAUTH یک مسئله جدید در این کتابخانه ایجاد نکنید.

شیء AliceBlue را ایجاد کنید

هنگامی که Session_ID خود را دارید ، می توانید یک شیء AliceBlue را با Session_ID و نام کاربری خود ایجاد کنید.

می توانید این دستورات را اجرا کنید تا شیء آبی تازه ایجاد شده خود را بررسی کنید.

موقعیت های روزانه را بدست آورید

موقعیت های خالص را بدست آورید

موقعیت های نگه داشتن

قراردادهای کارشناسی ارشد را دریافت کنید

گرفتن قراردادهای کارشناسی ارشد به شما امکان می دهد تا با نام نماد و سفارشات را جستجو کنید. قراردادهای مستر به عنوان یک سفارش توسط شماره توکن و نام نماد در یک پرونده محلی ذخیره می شوند. هر زمان که به روزرسانی تجارت ، به روزرسانی سفارش یا به روزرسانی نقل قول می کنید ، کتابخانه بررسی می کند که آیا قراردادهای اصلی بارگیری شده است یا خیر. اگر آنها باشند ، شیء ابزار را مستقیماً به بروزرسانی وصل می کند. به طور پیش فرض تمام قراردادهای اصلی همه مبادلات فعال شده در نمایه شخصی شما بارگیری می شود. یعنی اگر نمایه شما حاوی موارد زیر باشد به عنوان مبادلات فعال ["NSE" ، "BSE" ، "MCX" ، NFO "] تمام یادداشت های قرارداد همه مبادلات به طور پیش فرض بارگیری می شوند. اگر احساس می کنید برای بارگیری همه Exchange زمان زیادی طول می کشد ، یا اگر به بارگیری همه صرافی ها نیاز ندارید ، می توانید هنگام ایجاد شیء AliceBlue ، کدام Exchange را برای بارگیری یادداشت های قرارداد مشخص کنید. قراردادهای اصلی پس از بارگیری در محل دما ذخیره می شوند و از زمان های بعدی استفاده می کنند. قراردادهای مستر روزانه یک بار در روز بارگیری می شوند (زیرا قراردادهای جدید مستر هر روز حدود ساعت 8 صبح به روز می شوند).

این باعث می شود چند ثانیه در زمان ایجاد شیء شیء AliceBlue کاهش یابد.

اطلاعات اسکریپت را از سرور آلیس دریافت کنید (این با شیء ابزار متفاوت است).

ابزارها توسط اشیاء ابزار نشان داده می شوند. اینها نمونه هایی هستند که هنگام دریافت قراردادهای کارشناسی ارشد ایجاد می شوند. آنها هنگام سفارش و مشترک شدن در یک نماد استفاده می شوند. ساختار یک Tuple ابزار به شرح زیر است:

همه ابزارها زمینه های ذکر شده در بالا را دارند. هر جا که یک زمینه برای یک ابزار قابل استفاده نباشد (به عنوان مثال ، ابزارهای سهام عدالت قیمت اعتصاب ندارند) ، این مقدار هیچ یک نخواهد بود.

ابزارهای قابل معامله را دریافت کنید

نمادها را می توان از چند طریق بازیابی کرد. هنگامی که قرارداد کارشناسی ارشد را برای مبادله بارگذاری کردید ، می توانید از بسیاری جهات ابزاری دریافت کنید.

یک ساز واحد را با نام آن دریافت کنید:

یک ابزار واحد را با شماره توکن دریافت کنید (به طور کلی فقط برای سهام BSE مفید است):

با ذکر انقضا ، اعتصاب و تماس یا قرار دادن ، به راحتی سازهای FNO را دریافت کنید.

جستجو برای نمادها

با تطبیق نام ، چندین ساز را جستجو کنید. این مورد غیر حساس است و تمام ابزاری را که در نماد خود نام دارد ، برمی گرداند. رمز

کد فوق نماد چندگانه را نشان می دهد که در نماد خود "Sensex" دارد. پاسخ نمونه

با تطبیق چندین نام ، چندین ساز را جستجو کنید

داده های خوراک زنده و داده های عمق بازار

هنگامی که قراردادهای مستر بارگذاری شده و یک ابزار قابل معامله دارید ، می توانید به راحتی در داده های فید/عمق بازار مشترک شوید.

دو نوع داده زنده در دسترس است

می توانید هر نوع داده زنده را برای یک اسکریپت داده شده مشترک کنید. با استفاده از enum LiveFeedType ، می توانید مشخص کنید که به چه نوع خوراک زنده ای نیاز دارید.

  • livefeedtype. tick_data
  • livefeedtype. depth_data

لطفاً برای اطلاعات بیشتر در مورد انواع مختلف فیدهای زنده ، به مستندات اصلی اینجا مراجعه کنید.

مشترک شدن در یک خوراک زنده

در یک تماس واحد در چندین ابزار مشترک شوید. مجموعه ای از ابزارها را برای مشترک شدن ارائه دهید.

شروع به دریافت فید زنده از طریق WebSocket

اشتراک در یک فید زنده

اشتراک در یک خوراک زنده موجود.

اشتراک در چندین ابزار در یک تماس واحد. مجموعه ای از ابزارها را برای عدم اشتراک گذاری ارائه دهید.

همه نمادهای مشترک را دریافت کنید

پیام های وضعیت بازار و پیام های تبادل.

به زودی در وضعیت بازار و پیام های مبادله مشترک شوید.

در پیام های وضعیت بازار مشترک شوید

دریافت پیام های وضعیت بازار.

پاسخ نمونه GET_MARKET_STATUS_MESSAGES ()

در پیام های تبادل مشترک شوید

دریافت پیام های وضعیت بازار.

پاسخ نمونه get_exchange_messages ()

پیام های وضعیت بازار و پیام های تبادل از طریق تماس تلفنی

می توانید انواع زیر را از طریق این API قرار دهید.

سفارش محدود (خرید داخلی)

نمونه پاسخ از سفارش مکان

سفارش بازار (فروش تحویل)

ترتیب محدودیت ضرر را متوقف کنید

سفارش بازار ضرر را متوقف کنید

بعد از سفارش بازار

پاسخ نمونه از سفارش AMO

پاسخ نمونه سفارش اصلاح

سفارش را لغو کنید

پاسخ نمونه سفارش لغو

دریافت تاریخچه سفارش و جزئیات تجارت

تاریخ سفارش همه سفارشات را دریافت کنید.

تاریخچه سفارش خاص را دریافت کنید

خواص را به عنوان enums سفارش دهید

خواص سفارش مانند TransactionType ، OrderType و سایر موارد با خیال راحت طبقه بندی شده به عنوان enums طبقه بندی شده اند ، بنابراین لازم نیست آنها را به عنوان رشته بنویسید.

انواع معاملات نشان می دهد که آیا می خواهید خرید یا فروش کنید. انواع معاملات معتبر از موارد زیر است:

  • TransactionType. buy - خرید
  • TransactionType. sell - فروش

نوع سفارش نوع نظمی را که می خواهید ارسال کنید مشخص می کند. انواع سفارش معتبر عبارتند از:

  • OrderType. market - سفارش را با قیمت بازار قرار دهید
  • OrderType. Limit - سفارش را با قیمت محدود قرار دهید (پارامتر قیمت محدودیت اجباری است)
  • OrderType. StopLossLimit - به عنوان یک دستورالعمل محدود کردن ضرر قرار بگیرید
  • OrderType. StopLossmarket - به عنوان یک سفارش بازار از دست دادن متوقف کنید
  • OrderType. BrackEtorder - به عنوان سفارش براکت قرار دهید
  • OrderType. Aftermarketorder - به عنوان سفارش بعد از بازار مکان

انواع محصول نشانگر پیچیدگی نظمی است که می خواهید قرار دهید. انواع معتبر محصول عبارتند از:

  • product. intraday - سفارش intraday که قبل از نزدیک شدن بازار مربع را خاموش می کند
  • Producttype. Delivery - سفارش تحویل که پس از نزدیک بازار با شما برگزار می شود

استراتژی مثال با استفاده از آلیس آبی API

Here is an example moving average strategy using alice blue API. This strategy generates a buy signal when 5-EMA>20-EMA (صلیب طلایی) یا سیگنال فروش در 5-EMA<20-EMA (death cross).

اکنون آلیس آبی از بارگیری داده های تاریخی برای آزمایش پشت پشتیبانی می کند.

  1. API داده های تاریخی از ساعت 5:30 بعد از ظهر (عصر) تا 8 صبح (صبح روز بعد) در روزهای هفته (دوشنبه تا جمعه) در دسترس خواهد بود. داده های تاریخی در ساعات بازار در دسترس نخواهد بود
  2. API داده های تاریخی در آخر هفته و تعطیلات کاملاً در دسترس خواهد بود.
  3. برای بخش NSE ، 2 سال داده های تاریخی ارائه می شود.
  4. برای بخش های NFO ، CDS و MCX ، داده های انقضا فعلی ارائه می شود.

این را قبل از ایجاد مسئله بخوانید

قبل از ایجاد مسئله در این کتابخانه ، لطفاً مراحل زیر را دنبال کنید.

 

  1. مشکلی را که با آن روبرو هستید جستجو کنید که قبلاً توسط شخص دیگری خواسته شده است. ممکن است برخی از مسائل در حال حاضر وجود داشته باشد ، یا حل شده یا حل نشده مربوط به مشکل شما باشد. به صفحه شماره بروید ، استفاده کنید: به عنوان فیلتر شماره گذاری کنید و مشکل خود را جستجو کنید.
  2. اگر احساس می کنید مشکل شما توسط کسی خواسته نشده است یا هیچ مشکلی با مشکل شما ندارد ، پس یک مسئله جدید ایجاد کنید.
  3. هنگام ایجاد مسئله ، مشکل خود را به تفصیل شرح دهید. اگر وقت لازم برای جزئیات/توصیف مشکلی را که با آن روبرو هستید ، ندارید ، فرض کنید که من نیز وقت نخواهم داشت که به مشکل شما پاسخ دهم.
  4. کد نمونه ای از مشکلی را که با آن روبرو هستید ارسال کنید. اگر کد را مستقیماً از شماره کپی کنم ، باید بتوانم مشکلی را که با آن روبرو هستید تولید مثل کنم.
  5. قبل از ارسال کد نمونه ، کد نمونه خود را یک بار آزمایش کنید. فقط کد نمونه باید آزمایش شود ، در حالی که شما در حال آزمایش هستید ، هیچ افزودنی دیگری نباید در آنجا باشد.
  6. برای نمایش مقادیر برخی از متغیرهای مربوط به مشکل خود ، برخی از تماس های تابع چاپ () را داشته باشید.
  7. نتایج عملکردهای چاپ () را نیز در این شماره ارسال کنید.
  8. از ویژگی درج کد GitHub برای درج کد و چاپ خروجی استفاده کنید تا کد مرتب نمایش داده شود.
  9. اگر چندین خط کد دارید ، برای وارد کردن چندین خط کد از لهجه قبر سه گانه (`` `) استفاده کنید. مثال: نمونه ای از آنچه انتظار دارم در هنگام ایجاد مسئله ای باشد.

 

استراتژی‌های اسکالپ...
ما را در سایت استراتژی‌های اسکالپ دنبال می کنید

برچسب : نویسنده : جعفر بدیعی بازدید : <-PostHit-> تاريخ : جمعه 29 ارديبهشت 1402 ساعت: 15:23