wetrade
: 자동화된 주식 거래를 위해 구축된 E-Trade Python 라이브러리 wetrade
개요 wetrade
는 처음에는 헤드리스 거래 시스템에 사용하기 위해 만들어진 비공식 E-Trade API 라이브러리입니다. 이는 유용한 내장 기능을 많이 제공하며 유연하고 확장 가능하며 다양한 주식 거래 요구를 수용하도록 설계되었습니다.
기능은 다음과 같습니다:
wetrade
문서전체 문서를 보려면 https://wetrade.readthedocs.io/en/latest/를 확인하세요.
wetrade
시작하기E-Trade API에 액세스하려면 E-Trade 개발자 시작하기 페이지에 자세히 설명된 4단계를 따른 다음 링크된 페이지를 통해 API 키를 요청해야 합니다. 또한 지연된 견적을 받지 않도록 신청 센터에서 실시간 데이터를 활성화하는 것이 좋습니다.
wetrade
설치:
새로운 Python 프로젝트를 위한 새로운 가상 환경을 만드는 것이 좋습니다.
# 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
이제 사용자 및 API 정보를 입력하고 다양한 wetrade
설정을 구성할 수 있는 옵션이 있는 settings.py 파일을 포함하여 프로젝트 디렉터리에 몇 개의 파일이 표시됩니다.
settings.py 외에도 우리는 간편한 배포를 위한 Dockerfile , 요구 사항.txt 및 몇 가지 기본 wetrade 사용법을 보여주는 예제 파일 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]으로 문의하세요. 또한 도움을 받거나 다른 wetrade
사용자와 채팅할 수 있는 Discord 서버도 만들었습니다.
면책 조항: wetrade는 비공식 API 라이브러리이며 어떤 종류의 보증도 제공되지 않습니다. 이는 E*TRADE Financial 또는 관련 조직에 의해 승인되거나 제휴되지 않습니다. 이 패키지를 사용하기 전에 기본 API의 서비스 약관을 읽고 이해하십시오. 저자는 이 패키지의 사용으로 인해 발생할 수 있는 어떠한 손해에 대해서도 책임을 지지 않습니다. 자세한 내용은 LICENSE 파일을 참조하세요.