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

Retropy

  • פותח הנושא פותח הנושא adamshalev
  • פורסם בתאריך פורסם בתאריך

adamshalev

מודרטור
הצטרף ב
24/1/15
הודעות
12,208
דירוג
23,344
Retropy זהו תחליף מבוסס קוד פתוח ל-Retrolyzer

הוראות שימוש בסיסיות (לבני אנוש שהם לא מפתחים)

- כנסו למחברת עם דוגמאות או מחברת ריקה
- חכו שהשרת יעלה
- הריצו את התא הראשון בעזרת כפתור Play או ע"י לחיצה במקלדת על Ctrl+Enter. חכו שהאתחול יסתיים.
- הריצו תאים אחרים לדוגמא או כתבו חדשים משלכם
- בשביל לשתף את התוצאות עם אחרים, שמרו את המחברת (Ctrl+S) והריצו את התא האחרון שרשום בו publish. זה יעלה את התוצאות כ-HTML ויתן אליו לינק.

הסבר
לפני שנה וחצי פרסמתי את רטרולייזר בפורום.
המטרה שלו הייתה לאפשר לעשות backtests בקלות מירבית, בשביל להבדיל בין דעות לעובדות, ולנסות לזקק מידע שימושי מהעבר.
לדעתי זה ענה בצורה טובה מאד לצורך הזה, אבל עם הזמן צפו מספר בעיות:
- השתמשתי בשפת ביטוי שבניתי מאפס (BQL), זה הגביל את יכול הביטוי, הקשה על אנשים להבין מה אפשרי ואיך והצריך משאבים רבים מצידי בלבנות ולתחזק את השפה
- הקוד היה סגור ורץ על שרת פרטי, מה שלא אפשר לאנשים אחרים להוסיף יכולות או לתקן באגים
- הזמן שהקצתי לפיתוח ותחזוקה היה ומוגבל ותלוי בדברים אחרים שמעסיקים אותי, שכן זהו לא יותר מתחביב

לכן לפני זמן מה החלטתי לעשות pivot אסטרטגי שפותר את הבעיות הללו, והפתרון הוא לעבור למודל קוד פתוח, ולהשתמש בפייטון כשפת הביטוי. היתרונות של כך הם:
- פייטון היא שפה חזקה וגמישה ומוכרת היטב, אפשר לבטא איתה כל דבר שהיה ניתן ברטרולייזר והרבה הרבה יותר
- קוד פתוח אומר שכל אחד יכול להוסיף יכולות ולתקן באגים בעצמו
- אין תלות בשרת מרכזי - אפשר להריץ מהמחשב המקומי, או אפילו בלי מחשב מקומי
- אין תלות בי, כל אחד יכול לעשות git clone ולפתח בחופשי בנפרד. הרשיון הוא מתירני - תעשו מה שאתם רוצים עם attribution למקור.

הפרוייקט יושב ב-GitHub:
https://github.com/hofesh/Retropy

מציע להסתכל ולקרוא את התיאור, גם למי שלא מתכנת, זה יתן קצת רקע לגבי איך הדברים עובדים.

כמובן שישנם גם חסרונות בגישה הזאת, וצריך להכיר בהם:
- זמן העליה עד שאפשר להריץ קוד ארוך יותר מאשר סתם להכנס לאתר
- הממשק משתמש קצר יותר "עמוס" מאשר המינימליזם של רטרולייזר
- צריך נוחות בסיסית בכתיבת "קוד" (אם כי גם ברטרולייזר הכתיבה הייתה בשפת פיתוח - BQL)
- יכולות שהיו קיימות ברטרולייזר אינם קיימות עדיין ברטרופיי, ויקח זמן עד שהן יתווספו

אשמח לשמוע מחשבות, הערות והצעות.
ויותר מכך - אני יודע כעבודה שחצי מהאנשים הפורום קשורים להייטק כך או אחרת - תתחילו לשלוח pull-requests ותוסיפו לקו"ח שתרמתם לפרוייקט קוד פתוח ;)
(נ.ב. - תעשו ג'סטה ותנו Star \ Clone לפרוייקט בגיטהאב D:)
 
נערך לאחרונה ב:
שאפו!

למה VM ולא Docker? זה כל כך last season!
 
אשמח לפירוט.. אילו פרטי מימוש? מה היתרון על Docker?
mybinder.org זה שירות שמאפשר לטעון מחברת Jupyter מ-GitHub ולהריץ אותה בחינם בסביבה מבודדת וזמנית.
איך בפועל הם עושים את זה, עם docker, VM או כל דבר אחר, זה לא משנה למשתמש הקצה.

היופי כאן הוא ש-Retropy זה סה"כ קוד בגיטהאב, אין שרת ואין כלום. כשרוצים להריץ אנליזה כלשהי עושים את זה מעל mybinder (או כל שירות אחר שמאפשר להריץ מחברות - למשל Google Colab). ואפשר גם מקומית במחשב אם רוצים יותר שליטה.
 
הורדתי את הזמן שלוקח לאתחל את ההרצה (התא הראשון) מדקה לכמה שניות - פשוט ע"י הוספת קובץ requirements.txt לרפוסיטורי.
כאשר mybinder מריץ את הריפו העדכני בפעם הראשונה, הוא מתקין את כל התלויות שמצויינות בקובץ ושומר אותן יחד עם ה-image. ואז מהפעם השניה והילך כל הרצה כבר עולה עם סביבה מוכנה לחלוטין.
 
Lisp is the DSL
 
ויותר מכך - אני יודע כעבודה שחצי מהאנשים הפורום קשורים להייטק כך או אחרת - תתחילו לשלוח pull-requests ותוסיפו לקו"ח שתרמתם לפרוייקט קוד פתוח ;)
יש דברים ספציפים שאתה רוצה לממש?
 
מאוד אנטי ציוני מצידך :(
זה לא.
הבעיה ש-TASE לא נגיש בצורה סבירה ב-API או אפילו HTTP. את המידע ששאבתי ברטרולייזר קיבלתי דרך ממשק אישי שמישהו בנה ושהוא לא רוצה שיהיה בקוד פתוח פומבי.
לכן - I challenge you, לכתוב משהו בפייטון ששואב מידע מ-TASE ולשלוח pull-request ל-Retropy.
 
זה לא.
הבעיה ש-TASE לא נגיש בצורה סבירה ב-API או אפילו HTTP. את המידע ששאבתי ברטרולייזר קיבלתי דרך ממשק אישי שמישהו בנה ושהוא לא רוצה שיהיה בקוד פתוח פומבי.
לכן - I challenge you, לכתוב משהו בפייטון ששואב מידע מ-TASE ולשלוח pull-request ל-Retropy.
לא יודע פייטון... למרות שאני מתכוון ללמוד כבר דיי הרבה זמן...

חיפוש שטחי בגוגל לא העלה כלום... דיי ברור שאפשר לעשות SCRAPING מ TASE ישירות אבל זה המון עבודה שחורה...

אפנה לכמה חברים בערב... אולי עוד נשארו לי קצת קשרים... אבל קשה לי מאוד להאמין שיתנו לי משהו שאוכל לשתף כ OS ...

את המידע ששאבתי ברטרולייזר קיבלתי דרך ממשק אישי שמישהו בנה ושהוא לא רוצה שיהיה בקוד פתוח פומבי.
מה עם web service פתוח?
 
I challenge you, לכתוב משהו בפייטון ששואב מידע מ-TASE ולשלוח pull-request ל-Retropy.
.....
את המידע ששאבתי ברטרולייזר קיבלתי דרך ממשק אישי שמישהו בנה ושהוא לא רוצה שיהיה בקוד פתוח פומבי.
תוכל לתת קווים כללים (אם אתה יודע ומורשה) כיצד הוא משך נתונים מ TASE ?
 
תוכל לתת קווים כללים (אם אתה יודע ומורשה) כיצד הוא משך נתונים מ TASE ?
/|\
חיפוש שטחי בגוגל לא העלה כלום... דיי ברור שאפשר לעשות SCRAPING מ TASE ישירות אבל זה המון עבודה שחורה...


מה עם web service פתוח?
לא מעוניין
 

פתחו חשבון למסחר עצמאי

פסגות טרייד

ישראל: 0.06% מעסקה (מינימום ₪2 לפעולה)
ארה"ב: 1¢ למניה (מינימום $6 לפעולה)
דמי ניהול: ללא דמי ניהול
מינימום: ₪10,000
פתיחת חשבון

מיטב טרייד

ישראל: 0.08% מעסקה (מינימום ₪4.65 לפעולה)
ארה"ב: 1¢ למניה (מינימום $6 לפעולה או $5 ב-IBKR)
דמי ניהול: פטור לשנתיים, אח״כ ₪15
מינימום: ₪5,000
פתיחת חשבון

אקסלנס טרייד

ישראל: 0.07% מעסקה (מינימום ₪3 לפעולה)
ארה"ב: 1¢ למניה (מינימום $6 לפעולה או $5 ב-IBKR)
דמי ניהול: פטור לשלוש שנים, אח״כ ₪15
מינימום: ₪10,000
פתיחת חשבון
פסגות טרייד
מינימום לפתיחת חשבון: ₪10,000
⌄
ישראל: 0.06% מעסקה (מינימום ₪2 לפעולה)
ארה"ב: 1¢ למניה (מינימום $6 לפעולה)
דמי ניהול: ללא דמי ניהול
פתיחת חשבון
מיטב טרייד
מינימום לפתיחת חשבון: ₪5,000
⌄
ישראל: 0.08% מעסקה (מינימום ₪4.65 לפעולה)
ארה"ב: 1¢ למניה (מינימום $6 לפעולה או $5 ב-IBKR)
דמי ניהול: פטור לשנתיים, אח״כ ₪15
פתיחת חשבון
אקסלנס טרייד
מינימום לפתיחת חשבון: ₪10,000
⌄
ישראל: 0.07% מעסקה (מינימום ₪3 לפעולה)
ארה"ב: 1¢ למניה (מינימום $6 לפעולה או $5 ב-IBKR)
דמי ניהול: פטור לשלוש שנים, אח״כ ₪15
פתיחת חשבון
גילוי נאות: האתר מקבל תגמול בגין פתיחת חשבון דרך הקישורים. אין באמור משום ייעוץ השקעות או שיווק השקעות.
לא הצלחתי להחליט אם התווים הללו הם הקווים שביקשתי או שמא חץ כלפי מטה (או גם וגם) :):)

מה הכוונה scraping מ- tase ישירות ? באיזה פורמט הם חושפים את זה?
 
נושאים דומים
פותח הנושא כותרת פורום תגובות תאריך
ה Backtesting גלגול חוזים עם Retropy שוק ההון 3

נושאים דומים

Back
למעלה