رباتهای تجاری حاشیه رمزنگاری: شروع به استفاده از پایتون

ساخت وبلاگ

معاملات حاشیه بسیار شبیه به معاملات Spot است. در هر دو مورد ، تجارت صرفاً تبدیل یک ارز برای دیگری است.

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

تجارت حاشیه امروز را با ابزارهای تجاری قدرتمند Trality شروع کنید

با استفاده از قابلیت های منحصر به فرد معاملات حاشیه Trality به همراه ویرایشگر کاملاً انعطاف پذیر پایتون ، سازندگان می توانند استراتژی های بی طرف بازار سودآور را توسعه دهند.

آن را به صورت رایگان امتحان کنید

بیایید مثال بزنیماگر یک معامله گر اعتقاد جدی داشته باشد که قیمت BTC در حال افزایش است ، آنها می توانند USDT را برای خرید BTC وام بگیرند. این امر به عنوان تجارت اهرم شناخته می شود زیرا می توان بدون وام گرفتن موقعیت بزرگتر در BTC گرفت. این اهرم هم سود و هم ضرر را به عنوان درصدی از مانده حساب معامله گران ضرب می کند ، به همین دلیل می تواند خطرناک باشد.

در مقاله زیر ، ما بررسی خواهیم کرد که چگونه می توانید با استفاده از پایتون ، با استفاده از پیتون ، موضوعاتی از قبیل بهره و هزینه معاملات حاشیه ، نمونه هایی از فروش کوتاه و تجارت اهرم ، محدودیت های نسبت حاشیه و مسئله انحلال را با ربات های معاملات حاشیه رمزنگاری شروع کنید. قبل از نتیجه گیری با تعدادی از نمونه های کد پایتون (به عنوان مثال ، OCO ، استراتژی QQE کوتاه کوتاه و محاسبه علاقه روزانه ، در میان دیگران).

رباتهای معاملاتی حاشیه ای از موارد استفاده می کنند

در اصل ، سه مورد اصلی استفاده برای یک ربات معاملات حاشیه وجود دارد.

  • فروش کوتاه: گرفتن موقعیتی که از قیمت دارایی پایین می آید.
  • خرید در اهرم: استراتژی فقط طولانی اما قادر به ریسک بیشتر از آنچه ممکن است بدون وام گرفتن باشد.
  • استراتژی های طولانی/کوتاه: اینها توسط استراتژی های ارزش نسبی استفاده می شوند که یک دارایی را خریداری می کنند و دارایی دیگری را برای کسب درآمد از عملکرد نسبی می فروشند.

تجارت و وام گرفتن

معاملات حاشیه می تواند پیچیده به نظر برسد ، اما فکر کردن در مورد تجارت حاشیه ای شبیه به تجارت Spot بسیار ساده تر است و به طور جداگانه روند وام و بازپرداخت وام های رمزنگاری را درک می کند. به عنوان مثال اگر معامله گر بخواهد ETH را با BNB بخرد ، اما در حال حاضر BNB ندارد ، پس می توانند دارایی دیگری برای خرید BNB بفروشند یا می توانند BNB مورد نیاز را قرض دهند.

توانایی وام گرفتن ارزهای رمزنگاری شده معامله گر چیزی نیست که فروش کوتاه را ممکن می سازد. برای فروش BTC در بازارهای نقطه ای ، معامله گر موظف است از قبل برخی از آنها را داشته باشد. با این حال ، با معاملات حاشیه ای ، BTC را می توان وام گرفت و سپس بدون آنکه هرگز آن را داشته باشد فروخته می شود. هنگامی که BTC در تاریخ بعدی خریداری می شود ، وام و بهره BTC می تواند بازپرداخت شود.

بهره و هزینه معاملات حاشیه

ارز قرض گرفته شده باعث افزایش علاقه به همان ارز می شود. اگر BTC وام گرفته شود ، بهره در BTC قابل پرداخت است. بهره توسط مبادله محاسبه می شود و در صورتی که شما یک ربات معاملات حاشیه ای را اجرا می کنید ، ساعتی با نرخ 1/24 برابر نرخ بهره روزانه پیچیده می شود. این نرخ ها را می توان با نرخ بهره حاشیه Binance یافت.

حداقل زمانی که می توان ارز را می توان در Binance وام گرفت 1 ساعت است. همچنین توجه به این نکته حائز اهمیت است که ، هنگام قرار دادن سفارش در حاشیه ، ارز هنگام قرار دادن سفارش وام گرفته می شود و نه در هنگام پر شدن. بنابراین اگر سفارش پر نشده باشد ، بهره باز هم به معامله بدهکار خواهد بود.

نمونه ای از فروش کوتاه

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

short selling, Python, margin trading bots

در پایان ، ترازو USDT از 20،000 USDT به 30،000 USDT افزایش یافته است ، که همان میزان تغییر قیمت BTC از 35،000 USD به 25،000 USDT است.

نمونه ای از تجارت اهرم

یک معامله گر همچنین می تواند با حداکثر 3 برابر اهرم در حاشیه متقاطع Binance تجارت کند ، که به یک معامله گر اجازه می دهد تا بیش از آنچه که در غیر این صورت است ، دارایی بیشتری بخرد.

leverage trading, Python, margin trading bots

مانده نهایی 55،000 دلار یا سود 30،000 USDT از تعادل شروع 25،000 USDT است. قیمت BTC در طول تجارت از 25،000 دلار به 40،000 دلار تغییر یافت و بنابراین با استفاده از اهرم 2x سود را دو برابر می کند.

مانده حساب حاشیه

مانده های حاشیه ای شبیه به مانده های نقطه ای با افزودن مبلغ وام گرفته شده و مبلغ بدهی است. مبلغ وام گرفته شده کل مبلغ وام گرفته شده از دارایی است و بهره کل سود جمع شده است.

به عنوان مثال توازن نقطه

spot balances, Python, margin trading bots

به عنوان مثال تعادل حاشیه

margin balances, Python, margin trading bots

مبلغ رایگان

این کل متعلق به آن است و می تواند برای بازپرداخت وام یا خرید دارایی استفاده شود ، یا برای سفارشات محدود اختصاص داده شود.

مقدار قفل شده

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

مقدار وام گرفته شده

این کل وام های موجود در دارایی است و فقط با دارایی های رایگان قابل بازپرداخت است.

مبلغ سود

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

نسبت حاشیه

نسبت حاشیه به عنوان ارزش دارایی / کل بدهی ها محاسبه می شود. کل بدهی ها مبلغ اصلی وام گرفته شده و تمام علاقه های بدهکار است. مبادله تضمین می کند که این نسبت بیشتر از 1. 1 است. اگر اینگونه نباشد ، دارایی های متعلق به معامله گر مجبور می شوند فروخته شوند و بدهی ها را بازپرداخت می کنند. معامله گر برای جلوگیری از انحلال باید همه چیز ممکن را انجام دهد.

محدودیت نسبت حاشیه

  • محدودیت معاملات حاشیه: این حداقل نسبت حاشیه است که در آن هیچ وام بیشتری مجاز نخواهد بود.
  • محدودیت تماس حاشیه: این نسبت حاشیه ای است که در آن به معامله گر اطلاع داده می شود که در صورت عدم بازپرداخت وام یا در صورت اضافه شدن وثیقه بیشتر ، حساب آنها در معرض خطر انحلال است.
  • حد انحلال: در زیر این نسبت حاشیه ، دارایی های موجود در حساب به طور خودکار فروخته می شوند و بهره و مبلغ وام پرداخت شده را پرداخت می کنند.

انحلال

اگر نسبت حاشیه زیر 1. 1 کاهش یابد ، انحلال صورت می گیرد. این یک فرآیند اتوماتیک است که با مبادله ای که دارایی ها برای افزایش نسبت حاشیه فروخته می شوند ، انجام می شود. وام ها از درآمد حاصل از فروش بازپرداخت می شوند و هزینه ای نیز توسط مبادله دریافت می شود. در مورد binance ، هزینه انحلال 2 ٪ از ارزش دارایی های فروخته شده است. توجه به این نکته حائز اهمیت است که دارایی های مرتبط با تجارت ممکن است برای بازپرداخت ارزهای وام گرفته شده فروخته شوند. اگر معامله گر صاحب BTC باشد و همچنین یک اهرم 3 برابر در Luna داشته باشد ، اگر لونا به صفر برود ، برخی از BTC فروخته می شوند.

خطر مرتبط با تجارت حاشیه

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

تجارت حاشیه و ریسک کوتاه

خطر مرتبط با کوتاه این است که قیمت دارایی بدون توقف بالا می رود. در صورت خرید دارایی ، اگر قیمت بالا برود ، قیمت فقط می تواند به 0 برسد. تجارت كوتاه بسته خواهد شد كه ضررها از ارزش وثیقه در حساب فراتر بروند. در نتیجه موقعیت نقدینگی خواهد شد و وام های بازپرداخت دارایی کوتاه.

تجارت حاشیه و ریسک اهرم

اگر معامله گر برای خرید دارایی وام گرفته است ، ممکن است حساب حاشیه قبل از رسیدن قیمت دارایی به صفر برسد. در موردی که اهرم 2x باشد ، اگر مقدار دارایی حدود 50 ٪ کاهش یابد ، حساب منحل می شود. حداکثر اهرم مجاز برای حاشیه متقاطع در Binance 3 برابر است. اگر یک موقعیت 3 برابر اهرم باشد ، برای انحلال حساب فقط 33 ٪ قطره طول می کشد.

وام و بازپرداخت

وقتی وام قرار می گیرد ، بلافاصله اجرا نمی شوند. آنها شبیه به سفارشات هستند زیرا درخواست هایی هستند که می توانند شکست بخورند ، اگر به عنوان مثال ، وام یا بازپرداخت درخواست شده ، نسبت های حاشیه یا مانده های موجود را نقض می کند. منطق بازپرداخت وام وام یک شیء بازپرداخت یا بازپرداخت را که می تواند در ایالت ذخیره شود ، برمی گرداند و بعداً تازه می شود و پرس و جو می کند.

state. loan = margin_borrow ("btc" ، 0. 01) اگر state. loan هیچکدام نیست: state. loan. refresh () چاپ (state. loan)
state. repayment = margin_repay ("BTC" ، 0. 01) اگر State. Payment هیچ کدام نیست: state. repayment. refresh () چاپ (state. repayment)

در اجرای بعدی پس از ایجاد وام یا بازپرداخت ، وضعیت از "در انتظار" به "تأیید" یا "شکست خورده" تغییر می کند.

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

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

یک کرکس-دیگر (OCO)

from enum import Enum class Mode(Enum): Buy = 1 Sell = 2 @enable_margin_trading() def initialize(state): state.order = None state.tp_order = None state.sl_order = None state.mode = Mode.Buy def has_position(data): free = query_balance_free(data.base) locked = query_balance_locked(data.base) borrowed = query_balance_borrowed(data.base) interest = query_balance_interest(data.base) # calculate risk exposure exposure = free+locked-borrowed-interest price = Decimal(f"") limit = symbol_limits(data.symbol) has_exposure = abs(exposure) * price> Decimal(limit.costMin) has_liabilities = (borrowed+interest) * price> Decimal(limit.costMin) retu has_exposure or has_liabilities @schedule(interval="1h", symbol="BTCBUSD") def handler(state, data): has_pos = has_position(data) if not has_pos: free = query_balance_free(data.base) borrowed = query_balance_borrowed(data.base) interest = query_balance_interest(data.base) if (borrowed + interest)> 0 and free>. mode. sell # خرید سفارش حاشیه با مقدار وام = float (query_portfolio_value ()) * 1. 1 state. order = margin_order_market_value (symbol = data. symbol ، مقدار ، ارزش ، side_effect = ordermarginsideeffect. autodeTermine) با دستورات cope. one_cancels_others (): #برای هزینه ها از آنجا که مبلغ خرید سفارش داده می شود order_qty = subtract_order_fees (state. order. quantity) tp_price = data. close [-1] * 1. 01 sl_price = data. close [-1] / 1. 01 # سفارشات خروجی باید بازپرداخت کنید. data. symbol ، مقدار = -order_qty ، stop_price = sl_price ، side_effect = ordermarginsideeffect. repay) elif state. mode == mode. sell: state. mode = mode. buy # فروش کوتاه با ارزش وام گرفتن (query_wery_wory_value_value ()) *-0. 5 state. order = margin_order_market_value (symbol = data. symbol ، مقدار = مقدار ، side_effect = سفارش marginsideeffect. autodeTermine) با سفارش. Order. Quantity tp_price = data. close [-1] / 1. 01 # سود زیر قیمت SL_Price = data. close [-1] * 1. 01 # ضرر متوقف بالاتر از قیمت فعلی است # سفارشات خروج باید بازپرداخت شود.# سفارشات خروجی باید برای بسته شدن # توجه داشته باشید # توجه داشته باشید: این امر هنگامی که موقعیت به دلیل چاپ علاقه انباشته شده ("توقف های کوتاه" ، state. order. quantity ، order_qty) حالت را ترک می کند.، مقدار = order_qty ، stop_price = tp_price ، side_effect = ordermarginsideeffect. repay) state. sl_order = margin_order_iftouched_market_amount (symbol = data. symbol ، مقدار = order_qty ، sl_price = sl_price ، side_effect = ordermarginsideeffect. reppay)

فروش کوتاه

ENABLE_MARGIN_TRADING () DEF Initialize (حالت): PASSSCHEDULE (فاصله = "1d" ، نماد = "btcusdt") def handler (حالت ، داده): print (query_balances ()) pos = query_open_position_by_symbol (data. ymbol ، شامل_دوست = =FALSE) MACD = DATA. MACD (12،26 ، 9) اگر POS هیچ کدام نیست: اگر MACD ["MACD_HISTOGRAM"] [-1]<0: # short btc # since the btc free balance is 0 the btc will be borrowed first and then sold margin_order_market_amount(symbol = data.symbol, amount = -0.01, side_effect = OrderMarginSideEffect.AutoDetermine) else: # close position by repaying loan if macd["macd_histogram"][-1]>0: مقدار = float (query_balance_borared (data. base) + query_balance_interest (data. base)) مقدار *= 1. 01 # تنظیم هزینه های سفارش margin_order_market_amount (symbol = data. symbol ، مقدار ، مقدار = ordermargideaffect. autodeTermine))

خرید با اهرم

@enable_margin_trading() def initialize(state): pass @schedule(interval="1d", symbol="BTCUSDT") def handler(state, data): print(query_balances()) pos = query_open_position_by_symbol(data.symbol, include_dust=False) macd = data.macd(12,26, 9) if pos is None : if macd["macd_histogram"][-1]>0: مقدار = 2. 0 * float (query_balance_free ("USDT")) /data. closeociation-1] # اهرم BTC طولانی # از آنجا که تعادل USDT رایگان نیست ، USDT اضافی وام گرفته می شود و برای اولین بار buy_order = margin_order_market_amount (نماد = داده ها. symbol ، مقدار = مقدار ، side_effect = ordermarginsideeffect. autodetermine) چاپ ("خرید عوارض جانبی سفارش" ، buy_order. margin_side_effect): # موقعیت نزدیک با بازپرداخت وام اگر macd ["macd_histogram"] [-1]<0: amount = -float(query_balance_free(data.base)) sell_order = margin_order_market_amount(symbol = data.symbol, amount = amount, side_effect = OrderMarginSideEffect.AutoDetermine) print("sell order side effect", sell_order.margin_side_effect)

استراتژی QQE کوتاه کوتاه

trade_size = 500 min_trade_size = 50Enable_margin_trading () defize (state): state. buy_order = none state. sell_order = noneSchedule (فاصله = "1d" ، نماد = "btcusdt" ، windows_size = 200) دستگیرنده def (حالت ، حالت ، دولت ، دولت ،داده ها): Portfolio = query_portfolio () pos = query_open_position_by_symbol (data. symbol) # از نشانگر qqe به عنوان روند روند = -1 اگر data. qqe (21 ، 5 ، 4. 2) استفاده کنید ["روند"] [ -1]<0 else +1 exposure = 0.0 if pos is None else float(pos.exposure) # plot data plot_line("leverage", query_position_weight(data.symbol), data.symbol) plot_line("exposure", exposure, data.symbol) plot_line("value", portfolio.portfolio_value, data.symbol) if trend>0: target_pos = TRADE_SIZE / data.close[-1] trade_size = target_pos - exposure # check trade size is large enough to be accepted by the exchange if trade_size * data.close[-1]>+min_trade_size: چاپ (f "خرید") state. buy_order = margin_order_market_amount (نماد = "btcusdt" ، مقدار = trade_size ، side_effect = ordermarginsideeffect. autodetermine) اگر روند<0: target_pos = -TRADE_SIZE / data.close[-1] trade_size = target_pos - exposure # check trade is size is large enough to be accepted by the exchange if trade_size * data.close[-1] 

هزینه بهره روزانه را محاسبه کنید

ENABLE_MARGIN_TRADING () def Initialize (حالت): state. run = 0Schedule (فاصله = "1d" ، نماد = "btcusdt") def handler (حالت ، داده): اگر state. run == 0: margin_borrپایه) * اعشاری (f "") چاپ (f "بدهی روزانه وام هزینه") USDT_DEBT = query_balance_borared (data. quoted) + query_balance_interest (data. quoted) به نقل از_BORRAWAR_COST = USDT_DEBT * QUERY_MARGIN_DAILY_DAILE_INTERESTER_INTERESTERED_RATE (چاپ "هزینه وام روزانه ") state. run += 1

افکار نهایی در مورد ربات های معاملات حاشیه با تریت

بدیهی است که در مورد این موضوع چیزهای بیشتری برای گفتن وجود دارد ، اما راهنمای فوق به معنای معرفی آموزنده برای شروع با ربات های تجاری حاشیه با استفاده از پایتون است.

آیا به دنبال ایجاد الگوریتم تجارت خود با استفاده از پایتون هستید؟

ویرایشگر کد Bot Python Bot Trality را بررسی کنید-ابزاری قدرتمند مبتنی بر مرورگر که برای معامله گران طراحی شده است که می خواهند با ربات های تجاری الگوریتمی بسازند ، پشتی ، بهینه سازی و تجارت زنده کنند. ما بالاترین سطح انعطاف پذیری و پیچیدگی موجود در معاملات خصوصی را ارائه می دهیم. در واقع ، این هسته اصلی کاری است که ما در تریت انجام می دهیم.

آن را به صورت رایگان امتحان کنید

هنگامی که از ربات حاشیه خود خوشحال شدید ، مرحله بعدی پیوند دادن آن با بهترین مبادله معاملات حاشیه Crypto است. از نظر تجارت در مبادله متمرکز ، یک ربات معاملاتی Binance احتمالاً بهترین مزایا را برای طیف گسترده ای از معامله گران ارائه می دهد ، اما مبادلات غیر متمرکز بسیار خوبی وجود دارد که اگر تصمیم دارید آن مسیر را طی کنید ، انتخاب کنید.

در اینجا در Trality HQ ، ما دائماً ابزارهای پلتفرم خود را برای پاسخگویی به نیازهای کاربران خود اصلاح و بهینه می کنیم. اگر نمونه های کد خاصی وجود دارد که دوست دارید پوشش آن را ببینید ، به هر حال با هم ارتباط برقرار کنید!< SPAN> ویرایشگر کد ربات Python Trality را بررسی کنید-ابزاری قدرتمند مبتنی بر مرورگر که برای معامله گران طراحی شده است که می خواهند با ربات های تجاری الگوریتمی بسازند ، پشتی ، بهینه سازی و تجارت زنده کنند. ما بالاترین سطح انعطاف پذیری و پیچیدگی موجود در معاملات خصوصی را ارائه می دهیم. در واقع ، این هسته اصلی کاری است که ما در تریت انجام می دهیم.

گزینه های باینری...
ما را در سایت گزینه های باینری دنبال می کنید

برچسب : نویسنده : سحر زکریا بازدید : 32 تاريخ : شنبه 21 مرداد 1402 ساعت: 20:46