wetrade
: مكتبة Python للتجارة الإلكترونية مصممة لتداول الأسهم الآلي wetrade
wetrade
هي مكتبة API غير رسمية للتجارة الإلكترونية تم إنشاؤها في البداية للاستخدام في أنظمة التداول بدون رأس. فهو يوفر الكثير من الوظائف المضمنة المفيدة، وقد تم تصميمه ليكون مرنًا وقابل للتوسيع ولتستوعب مجموعة واسعة من احتياجات تداول الأسهم.
تشمل الميزات:
wetrade
للحصول على الوثائق الكاملة، راجع: https://wetrade.readthedocs.io/en/latest/.
wetrade
من أجل الوصول إلى E-Trade API، ستحتاج إلى اتباع الخطوات الأربع المفصلة في صفحة البدء بمطور E-Trade ثم طلب مفتاح API من خلال الصفحة المرتبطة. يوصى أيضًا بتمكين البيانات في الوقت الفعلي في مركز الاشتراك حتى لا تتلقى عروض أسعار متأخرة.
تثبيت wetrade
:
إنها فكرة جيدة إنشاء بيئة افتراضية جديدة لمشروع بايثون جديد
# create venv
python3 -m venv venv
# enter venv
source venv/bin/activate
يمكننا بعد ذلك تثبيت wetrade
في venv الخاص بنا. لتسجيل الدخول التلقائي، سنحتاج أيضًا إلى تثبيت متصفحنا.
pip install wetrade
playwright install firefox
بعد ذلك، ستبدأ في وقت قصير باستخدام البرنامج النصي التلقائي للمشروع الجديد!
python -m wetrade new-project
ستشاهد الآن مجموعة من الملفات في دليل المشروع الخاص بك بما في ذلك ملف settings.py حيث ستُدخل معلومات المستخدم وواجهة برمجة التطبيقات (API) الخاصة بك وسيكون لديك خيار تكوين إعدادات wetrade
المختلفة.
بالإضافة إلى settings.py، قمنا أيضًا بإنشاء ملف Dockerfile لسهولة النشر بالإضافة إلى ملف require.txt وملف مثال main.py الذي يوضح بعض الاستخدامات الأساسية للتجارة الرطبة:
main.py
from wetrade . api import APIClient
from wetrade . account import Account
from wetrade . quote import Quote
from wetrade . order import LimitOrder
from wetrade . utils import setup_cloud_logging
def main ():
# Setup cloud logging (optional) and APIClient
setup_cloud_logging ()
client = APIClient ()
# Check out your account
account = Account ( client = client )
print ( 'My Account Key: ' , account . account_key )
print ( 'My Balance: ' , account . check_balance ())
# Get a stock quote
quote = Quote ( client = client , symbol = 'IBM' )
print ( f'Last { quote . symbol } Quote Price: ' , quote . get_last_price ())
# Place some orders and stuff
order1 = LimitOrder (
client = client ,
account_key = account . account_key ,
symbol = 'NVDA' ,
action = 'BUY' ,
quantity = 1 ,
price = 50.00 )
order1 . place_order ()
order1 . run_when_status (
'CANCELLED' ,
func = print ,
func_args = [ 'Test message' ])
order2 = LimitOrder (
client = client ,
account_key = account . account_key ,
symbol = 'NFLX' ,
action = 'BUY' ,
quantity = 1 ,
price = 50.00 )
order2 . place_order ()
order2 . run_when_status (
'CANCELLED' ,
order1 . cancel_order )
order2 . cancel_order ()
if __name__ == '__main__' :
main ()
تم تصميم wetrade
في البداية للعمل دون توقف، كما أنها تتمتع بمعالجة مدمجة لمعظم أخطاء الوساطة والخادم وواجهة برمجة التطبيقات (API) المتوقعة. تعد هذه الوظيفة ومعظم وظائف wetrade
الأخرى اختيارية تمامًا للاستخدام، ويتيح لك هيكلنا المعياري الاستفادة من المكتبة بقدر ما تريد أو أقل. هدفنا هو إضافة وظائف جديدة باستمرار لدعم حالات الاستخدام الإضافية. إذا كان لديك أي تعليقات أو اقتراحات بشأن ميزات جديدة، فلا تتردد في إنشاء مشكلة أو التواصل مع: [email protected]. لقد أنشأنا أيضًا خادم Discord حيث يمكنك الحصول على المساعدة أو مجرد الدردشة مع مستخدمي wetrade
الآخرين.
إخلاء المسؤولية: wetrade هي مكتبة API غير رسمية ولا تأتي بدون أي ضمان من أي نوع. لم يتم اعتمادها بأي حال من الأحوال من قبل E*TRADE Financial أو أي منظمة مرتبطة بها أو تابعة لها. تأكد من قراءة وفهم شروط خدمة واجهة برمجة التطبيقات الأساسية قبل استخدام هذه الحزمة. لا يتحمل المؤلفون أي مسؤولية عن أي ضرر قد ينجم عن استخدام هذه الحزمة. راجع ملف الترخيص لمزيد من التفاصيل.