מדריך אינטגרציה ללא שרתים ב-AWS Lambda

בנה מערכות מסחר מבוססות אירועים עם AWS Lambda. הפעל בוטי מסחר על פי אותות לווייתנים, עבד זרמי נתונים בזמן אמת, והפעל תהליכים מורכבים ללא צורך בניהול תשתית.

פורסם ב-21 במרץ 2026 17 דקות קריאה מתקדם

יתרונות ארכיטקטורה ללא שרתים

AWS Lambda מאפשר לך להריץ קוד ללא ניהול שרתים. מושלם לאינטגרציות עם Smart Money API כי אתה משלם רק עבור זמן ביצוע. כאשר מגיע אות לווייתן, Lambda מתעורר, מעבד אותו, עשוי להפעיל מסחר, ואז חוזר לישון.

יתרונות מרכזיים

  • ללא ניהול שרתים — AWS מטפל בסקיילינג ובתשתית
  • חיסכון בעלויות — תשלום לכל 100ms של ביצוע, $0.20 למיליון הפעלות
  • סקיילינג אוטומטי — מטפל אוטומטית בעומסים
  • לטנסי נמוכה — מופעל תוך מילישניות מהגעת האות
  • אינטגרציה עם שירותי AWS — התחבר ל-DynamoDB, SNS, SQS, S3, CloudWatch
  • רישום מובנה — אינטגרציה עם CloudWatch לניפוי שגיאות וניטור

הגדרה מוסדית: קרן קריפטו מפעילה 3 פונקציות Lambda: מעבד אותות (מוודא ומסנן אותות), מבצע מסחר (מבצע הזמנות), ומנטר סיכונים (בודק מגבלות פוזיציה). כולם מופעלים על ידי webhooks מ-Smart Money API. עלות כוללת: $12 לחודש עבור 10M הפעלות.

שימושים נפוצים

  • עבד אותות לווייתנים והעבר לבוט מסחר
  • אמת אותות מול מגבלות סיכון לפני ביצוע
  • רשום את כל האותות ל-DynamoDB לניתוח היסטורי
  • שלח התראות לצוות דרך SNS או Slack
  • ניתוח דפוסי אותות ועדכן פרמטרי אסטרטגיה

הגדרת AWS ראשונית

שלב 1: צור חשבון AWS

צור חשבון AWS ב-aws.amazon.com. הרמה החינמית כוללת מיליון הפעלות Lambda בחודש, מושלם לבדיקות.

שלב 2: גש לממשק Lambda

התחבר ל-AWS Console, עבור לשירות Lambda. לחץ על "Create function".

שלב 3: בחר סביבת ריצה

בחר Python 3.11 (מומלץ למסחר קריפטו). Node.js 18 גם עובד. הימנע מסביבות ריצה ישנות שעלולות להכיל פרצות אבטחה.

שלב 4: הגדר תפקיד ביצוע

Lambda זקוק לתפקיד IAM עם הרשאות מתאימות. ראה חלק תצורת IAM למטה.

קבל את מפתח ה-API שלך תוך 30 שניות

חבר אינטגרציה זו לנתונים חיים תוך דקות. מפתח API חינם, 100 קריאות/יום, לא נדרש כרטיס.

קבל את מפתח ה-API →

תפקידי IAM והרשאות

מדיניות הרשאות מינימלית

צור מדיניות IAM עם הרשאות הכרחיות בלבד (עיקרון הרשאות מינימליות):

מדיניות IAM ל-Lambda
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:CreateLogGroup",
"logs:CreateLogStream",
"logs:PutLogEvents"
],
"Resource": "arn:aws:logs:*:*:*"
},
{
"Effect": "Allow",
"Action": ["dynamodb:PutItem"],
"Resource": "arn:aws:dynamodb:us-east-1:*:table/whale-signals"
}
]
}

שיטות עבודה מומלצות

  • השתמש בתפקידים נפרדים — פונקציות Lambda שונות צריכות להיות עם תפקידים שונים
  • הרשאות מינימליות — הענק רק הרשאות הנחוצות בפועל
  • הימנע מסימני * — ציין משאבים מדויקים במקום
  • סובב פרטי גישה — אחסן מפתחות API ב-AWS Secrets Manager, לא בקוד

כתיבת פונקציות Lambda

פונקציה 1: מעבד אותות

מקבל webhook מ-Smart Money API, מאמת אות, רושם ל-DynamoDB:

lambda_handler.py
import json, boto3, os
from datetime import datetime
dynamodb = boto3.resource('dynamodb')
table = dynamodb.Table('whale-signals')
def lambda_handler(event, context):
try:
body = json.loads(event['body'])
signal = body['signal_type']
confidence = float(body['confidence'])
# מעבד רק אותות עם ביטחון גבוה
if confidence < 0.70:
return {'statusCode': 200, 'body': 'Ignored'}
# רושם ל-DynamoDB
table.put_item(Item={
'timestamp': datetime.now().isoformat(),
'signal': signal,
'confidence': confidence
})
return {'statusCode': 200, 'body': מעובד}
למעט שגיאה כ e:
print(f'Error: {e}')
return {'statusCode': 500, 'body': 'Error'}

פונקציה 2: מבצע מסחר

מקבל אות מאומת, בודק מגבלות סיכון, מבצע מסחר דרך API של הבורסה:

  • אמת גודל פוזיציה מול יתרת חשבון
  • בדוק רמות stop loss ו-take profit
  • קרא ל-API של הבורסה כדי להציב הוראות limit
  • רשום את הביצוע ביומן ביקורת
  • שלח אישור ל-Slack

פונקציה 3: מנטר סיכונים

רץ באופן תקופתי (כל 5 דקות) כדי לבדוק סיכון תיק:

  • בקש את כל הפוזיציות הפתוחות
  • חשב דלתא וגמא של התיק
  • אם המינוף > סף, צמצם פוזיציה
  • התריע לצוות אם מופרות מגבלות סיכון

הגדרת API Gateway

יצירת נקודת קצה HTTP

API Gateway חושף את Lambda כנקודת קצה HTTP ש-Smart Money API יכול לשלוח אליה webhook:

  1. צור REST API חדש ב-API Gateway
  2. צור שיטת POST המצביעה לפונקציית Lambda
  3. הגדר סוג אינטגרציה = פונקציית Lambda
  4. פרוס לשלב (למשל, "production")
  5. העתק URL: https://xyz.execute-api.us-east-1.amazonaws.com/production

אימות מפתח API

הגן על נקודת הקצה עם מפתח API כך שרק Smart Money API יוכל להפעיל אותה:

אבטחת API Gateway
1. צור מפתח API במסוף API Gateway
2. צור תוכנית שימוש, צרף מפתח API
3. הפעל דרישת מפתח API על השיטה
4. Smart Money API כולל את המפתח בכותרת: x-api-key

הגדרת CORS

אם קוראים מדפדפן, הפעל CORS:

  • Access-Control-Allow-Origin: *
  • Access-Control-Allow-Headers: Content-Type
  • Access-Control-Allow-Methods: POST

ארכיטקטורת מונעת אירועים

Smart Money Webhook → API Gateway → Lambda

הפעלה סינכרונית. האות מגיע, Lambda מעבד מיידית, מחזיר תגובה ל-Smart Money API.

הפעלות מתוזמנות (EventBridge)

הפעל Lambda לפי לוח זמנים (למשל, מנטר סיכונים כל 5 דקות):

חוק EventBridge
לוח זמנים: rate(5 minutes)
יעד: פונקציית Lambda risk-monitor

אינטגרציה עם תור SQS

לאותות בנפח גבוה, השתמש בתור SQS כ-buffer:

  • Smart Money API → נושא SNS → תור SQS
  • Lambda סורק את התור כל 10 שניות
  • עבד את האותות בקצב שלך
  • מונע מ-Lambda להעמיס יתר על המידה

פריסה וניהול

שימוש ב-SAM (Serverless Application Model)

פרוס תשתית כקוד באמצעות AWS SAM:

sam-template.yaml
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
ProcessSignalFunction:
Type: AWS::Serverless::Function
Properties:
Handler: index.lambda_handler
Runtime: python3.11
Timeout: 10
Events:
ApiEvent:
Type: Api
Properties:
Path: /webhook
Method: POST

בקרת גרסאות ו-CI/CD

השתמש ב-GitHub + AWS CodePipeline לפריסות אוטומטיות:

  1. דחוף קוד ל-repo של GitHub
  2. CodePipeline מזהה commit
  3. CodeBuild מריץ בדיקות ואורז
  4. CodeDeploy מפריס ל-Lambda
  5. נסיגה אוטומטית במקרה של כשל

משתני סביבה

אחסן סודות ב-AWS Secrets Manager, לא בקוד:

  • SMART_MONEY_API_KEY — אחזר מ-Secrets Manager ב-Lambda
  • EXCHANGE_API_KEY — אחסן בצורה מאובטחת
  • DYNAMODB_TABLE — הפנה מפרמטר CloudFormation

ניטור ואיתור באגים

יומני CloudWatch

Lambda מתעדת אוטומטית ל-CloudWatch. בדוק יומנים לשגיאות:

  • לחץ על פונקציה במסוף Lambda
  • עבור לכרטיסייה Monitor → צפה ביומנים ב-CloudWatch
  • חפש שגיאות או חריגות

מדדים מותאמים אישית

דחוף מדדים מותאמים אישית ל-CloudWatch לניטור:

מדדים מותאמים אישית
cloudwatch = boto3.client('cloudwatch')
cloudwatch.put_metric_data(
Namespace='SmartMoney',
MetricData=[{
'MetricName': 'SignalsProcessed',
'Value': 1
}]
)

התראות CloudWatch

התריע כאשר פונקציית Lambda נכשלת או מאטה:

  • שיעור שגיאות > 1%
  • משך > 5 שניות
  • מתרחשת האטה
  • שגיאות timeout

מעקב X-Ray

הפעל X-Ray למעקב מבוזר בין שירותים:

  • ראה כמה זמן לוקח לכל פעולה
  • זהה צווארי בקבוק
  • פתור בעיות אינטגרציה

תובנות תפעוליות: הטעויות היקרות ביותר ב-Lambda אינן עלות החישוב — אלא באגים שגורמים לעסקאות גרועות. השקעו רבות במעקב, רישום ובדיקות. עדיף להוציא 50$/חודש על CloudWatch מאשר 5,000$ על טעות מסחר.

בנה תשתית מסחר ללא שרתים

הפעל מערכות מסחר מונעות אירועים ב-AWS Lambda. עבד אותות של לווייתנים, בצע עסקאות ונטר סיכונים ללא ניהול שרתים.

צפה בתוכניות מחירים
תוכנית Pro מומלצת למשלוח Webhook. עלות Lambda: ~1-5$/חודש עבור נפחי מסחר טיפוסיים.

מדריכי תשתית קשורים

התחל בחינם — 100 קריאות/יום, ללא כרטיס

קבל זרימת לווייתנים חייה, מימון, עניין פתוח ונתונים על שרשרת משלושה בורסות מ-API אחד. רמה חינמית, ללא כרטיס אשראי, שדרג בכל עת.

התחל בחינם →
נסה את קונסולת ה-API החיה → (לא נדרש חשבון)