• אזהרה: פורום זה מיועד להחלפת דעות בין משקיעים חובבים בנושאים תאורטיים בלבד. חל איסור מוחלט על מתן ייעוץ השקעות פרטי. אין לראות בדיונים בפורום בבחינת יעוץ השקעות או תחליף לייעוץ פיננסי מקצועי המותאם אישית וספציפית למשקיע תוך התחשבות בנתוניו, צרכיו המיוחדים והאחרים, מצבו הכספי, נסיבותיו ומטרותיו. אין להסתמך או לפעול על פי הנאמר בפורום ללא קבלת יעוץ מקצועי אישי מבעל הרישיון המתאים, וכל הנוהג אחרת עושה זאת על אחריותו בלבד. האחריות לאמור בכל הודעה היא על מחבר/ת ההודעה בלבד.
  • חשבון מסחר באקסלנס טרייד : סנט למניה במסחר בארה"ב (מינימום $5 לעסקה), פטור מדמי טיפול לשנתיים, קורס במתנה ובונוס 100 ש"ח למצטרפים חדשים. להצטרפות דיגיטלית לחצו כאן .

Retropy

תגיד, mybinder טוען מחדש את הריפו מ-github בכל הרצה, כך שכל commit ב- github מתשקף מיד ב mybinder (במכונות חדשות) ? או ש-mybinder מחזיק בעצמו איזשהו קאש של הריפו ?
כל פעם שאתה נכנס לקישור הוא בודק את תאריך השינוי האחרון של הריפו, אם הוא השתנה (או אם זאת פעם ראשונה) הוא בונה מכונה חדשה:
- לוקח image בסיס שלהם
- עושה clone לריפו
- מתקין תלויות נחוצות (ככה חסכתי את זמן האתחול של המחברת)
- מעלה jupyter notebook בספריה של הפרוייקט
- שומר image חדש של כל זה לשימוש עתידי (לוקח כ-5 שניות לעלות כאשר יש כבר image מוכן)
- מכניס אותך למכונה
 
שמח לבשר שיש תמיכה לבושת תל-אביב, גם לקרנות נאמנות, גם לתעודות סל וגם למדדים (כן, צריך קוד שונה לכל אחד מהם :roll:)

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

דוגמא לשלושת הסוגים, עבור ת"א-125.
 
@adamshalev ,
שיחקת אותה עם המעבר לקוד פתוח ו- mybinder...
Yeah-You-Rock-meme.jpg
 
אתה יכול לעשות השוואה בסיסית ברטרופי, אם כי כרגע בלי התחשבות במס דיבידנים (pull-request מישהו?)
למה התוצאה (SPY מנצח את CSPX) סותרת את המסקנה להלן
S&P500
CSPX vs SPY - תשואת יתר של 0.22% 0.19% לקרן האירית. במקרה של הנזלה מלאה תשואת חסר של מינוס 0.16%.
קיוריוז מעניין - דמי הניהול של שתי הקרנות כמעט זהים. בקרן האירית יש פחות ניכוי מס על דיבידנדים בגלל הסכם המס עם ארה"ב. בקרן האמריקאית אנחנו מדמים ניכוי מס במקור של 25% כפי שיחווה ישראלי מצוי.
אנחנו יכולים לשחק עם אחוז ניכוי המס על הדיבידנדים בסימולציה (שמשפיע רק על SPY) עד שתשואת היתר יורדת לאפס מוחלט וכך להסיק מהו אחוז הניכוי במקור בקרן הצוברת.
כאשר עושים זאת מקבלים את המספר 15% - שזה בדיוק מה שהיינו מצפים לפי אמנת המס בין ארה"ב לאירלנד. די מגניב.
בגלל חוסר ההתחשבות במס דיב' ?
 
@adamshalev לא ענית על שאלתי האחרונה אבל ניחא...

כעת שאלה אחרת
מנסה לשלוף את IWDA הידועה, מה ההבדל בין IWDA.L שמחזיר תוצאות מוזרות (כנראה נפלאות יאהו פיינס) לבין IWDA@IC מהו מקור הנתונים IC ? ואיזה ואיך אדע איזו ורסיה של IWDA זה מחזיר ?

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

כעת שאלה אחרת
מנסה לשלוף את IWDA הידועה, מה ההבדל בין IWDA.L שמחזיר תוצאות מוזרות (כנראה נפלאות יאהו פיינס) לבין IWDA@IC מהו מקור הנתונים IC ? ואיזה ואיך אדע איזו ורסיה של IWDA זה מחזיר ?
מקור המידע הדפולטיבי הוא AlphaVantage = AV. ממה שראיתי, הרבה מהמידע שלהם מגיע מיאהו, בפרט על קרנות זרות שכולו מגיע מיאהו, אז אותם פאקים שיש ביאהו בקרנות זרות יש גם ב-AV.
IC = Investing.com
משם יש רק גרף מחיר, ללא דיבידנדים וללא TR, אבל לפחות הוא לא זבל. אם תלך ותחפש משהו ב-investing.com התוצאה הראשונה שמופיעה בתוצאות חיפוש, זה מה שאתה מקבל ב-retropy (עבור אותה מחרוזת).

למה התוצאה (SPY מנצח את CSPX) סותרת את המסקנה להלן
סליחה, פספסתי את השאלה.
כן זה בגלל המס על דיבידנדים. מאז ששמתי את הלינק יש כבר תמיכה במודים של PR/NTR/TR, כפי אתה יכול לראות כאן.
 
@adamshalev
יש דוגמאות קוד מוכנות לתיקים משולבים כמה ניירות?
וכן למינוף מתעדכן יומית כמו SSO
וכן יתרה שלילית (שורט)?
 
היי, יש לי שאלה לגבי http://retrolyzer.com

האם יש אפשרות לעדכן אחוזים שונים עם הזמן על אותו תיק?

למשל תיק שמורכב מ 5% SSO ו-95% SPY מהתאריך 2007/10/1 ועד 2009/1/1 והכל מ-2009/1/1 ועד 2013/1/1
היחס משתנה ל- 10% SSO ו-90% SPY ושזה יהיה על אותו תיק

תודה רבה.


SSO
SPY
SSO:5|SPY:95 { rebalance quarterly }
start '2007/10/1'
end '2009/1/1'

SSO:10|SPY:90 { rebalance quarterly }
start '2009/1/1'
end '2013/1/1'
 
היי, יש לי שאלה לגבי http://retrolyzer.com

האם יש אפשרות לעדכן אחוזים שונים עם הזמן על אותו תיק?

למשל תיק שמורכב מ 5% SSO ו-95% SPY מהתאריך 2007/10/1 ועד 2009/1/1 והכל מ-2009/1/1 ועד 2013/1/1
היחס משתנה ל- 10% SSO ו-90% SPY ושזה יהיה על אותו תיק

תודה רבה.


SSO
SPY
SSO:5|SPY:95 { rebalance quarterly }
start '2007/10/1'
end '2009/1/1'

SSO:10|SPY:90 { rebalance quarterly }
start '2009/1/1'
end '2013/1/1'
לא בקלות. בלי קשר retrolyzer כבר לא מתוחזק. הוא בקושי עובד גם ככה. אתה יכול לעשות את זה עם retropy אם אתה קצת מכיר פייטון, ואפילו עם google spreadsheet.
 
לא בקלות. בלי קשר retrolyzer כבר לא מתוחזק. הוא בקושי עובד גם ככה. אתה יכול לעשות את זה עם retropy אם אתה קצת מכיר פייטון, ואפילו עם google spreadsheet.
גם את הדוגמה אני לא מצליח להריץ ואני פועל לפי ההוראות שכתבת..
אני מנסה להריץ את השורה
%run "Retropy_framework.ipynb"
ואני מקבל
ERROR:root:File `'Retropy_framework.ipynb.py'` not found.

זה אולי כי לא מותקן אצלי פייטון על המחשב?
 
גם את הדוגמה אני לא מצליח להריץ ואני פועל לפי ההוראות שכתבת..
אני מנסה להריץ את השורה
%run "Retropy_framework.ipynb"
ואני מקבל
ERROR:root:File `'Retropy_framework.ipynb.py'` not found.

זה אולי כי לא מותקן אצלי פייטון על המחשב?
לא זה סתם כי הדוגמא מיושנת. נסה להסתכל בספריית ה Reasearch על מחברות עדכניות, הן אמורות לעבוד. אני בעיקר עובד על זה בשביל עצמי אז לא אכפת לי לשבור ממשקים וכד.
 
אני מנסה לעשות clone לרפו וזה לוקח הרבה זמן. יש שם קבצים גדולים נכון? אם כן, חשבת להשתמש ב git-lfs?
 
אני מנסה לעשות clone לרפו וזה לוקח הרבה זמן. יש שם קבצים גדולים נכון? אם כן, חשבת להשתמש ב git-lfs?
נחמד, טוב להכיר. לא משתמש בזה. יש כמה קבצים גדולים, אבל בעיקר יש גם הרבה קבצים שכן הריפו שומר את ההיסטוריה של כל הטיקרים גם בשביל שהכל ירוץ מהר יותר.
 
תודה על התוכנה! פתחתי PRים עם כל מיני שיפורים. אלה הגדולים שבהם:
- להוריד את גודל הריפו מ 2GB ל 66MB. בשביל זה עשיתי 2 דברים:
1. ה output של הקבצים של notebook תופסים מלא מקום אז ניקיתי אותם והוספתי קונפיגורציה שהוא לא יכתוב אותם.
2. הוספתי את הטיקרים ל gitignore. הם עדיין יישמרו מקומית, אבל git יתעלם מהם. בנוסף, אם יש חשש שהטיקרים יעלמו ויהיו זמינים רק מקומית. (אני לא בטוח מאיפה מושכים אותם), הוספתי שמירה ומשיכה ל S3 (מי שרוצה גם גישה, שיפתח משתמש ב AWS ואני אאפשר אותו).
- קיבעתי מספרי גרסאות של חבילות ב requirements.txt, מכיוון שהיו לי שגיאות עם גרסאות מסויימות.
אפשר לראות דוגמא עובדת כאן: https://hub.gke.mybinder.org/user/byohay-retropy-t3afaejj/notebooks/Demos.ipynb
(ל binder אין גישה ל S3 אבל זה resilient לכשלונות מ S3).

@adamshalev יש לי מספר שאלות:
- אני מבולבל לגבי היחידות מידה של הדוגמאות. כשאני מריץ את הדוגמא השלישית במחברת ששלחתי לינק אליה, הערך הסופי של תכלית TR הוא (בערך) 1.0854. לעומת זאת, אם אני מוחק את כולם חוץ מ "SPY" ו"תכלית", הערך האחרון של תכלית TR הוא (בערך) 2.59. מה היחידות מידה ה Y מייצגות אם כן?
- למה תמיד נוסף TR בגרף?
- אם יש cache, איך מורידים עדכון של טיקר חדש?

תודה!
 
@beny
קודם כל המון תודה!
מיזגתי את השינויים, אבל גם נטרלתי חלק מהדברים.
- הניקוי האוטומטי של הפלט עשה לי בעיות, גם זרק שגיאה וגם גרם להודעה ״קובץ השתנה מבחוץ״ כל הזמן. כרגע זה כבוי, אבל הוספתי סקריפט שמנקה את כל המחברות. באופן כללי לגבי ניקוי מחברות בשמירה - אני פחות אוהב את זה כי זה מאד נח לחזור למחברת מחקר מלפני חודש ולראות את הגרפים גם מבלי להריץ הכל מחדש. מתלבט בנושא.
- ה-cache משתמש רק בקבצים המקומיים, בלי S3, אבל חוץ מזה הכל נשאר. מעניין מאד הרעיון של S3. באופן כללי לגבי ה-cache, זה אכן לא רעיון טוב לשמור אותו ב-git, הכוונה הייתה שמחברות ירוצו מהר יותר גם אם קצת לא עדכניות, אבל לשמור את זה בגיט באמת הפך למפלצת.
- מחברת ה-Demos הייתה לא מעודכנת (אני לא משתמש בה), בכל אופן עדכנתי אותה והמחברות שאני עובד איתן בשוטף והן עדכניות רובן זה תחת ה-Research.
- העפתי עוד כמה דברים שהיו מיותרים בריפו, הוא תופס עכשיו 2.5 מגה (אם עושים clone depth 1). כדי להפטר מכל ההיסטוריה של הקבצים הכבדים צריך להתאמץ קצת יותר.
- הדוגמא שקישרת אליה לא עולה.
- לגבי יחידות המידה: כברירת מחדל, הפונק show מניחה שאתה משווה בין כמה ני״ע, והיא עושה להם align (פרמטר אופציונאלי), המשמעות היא שהם כולם מתיישרים להתחיל ב-1, אז הערך 1.1 אומרש הני״ע הזה עלה ב-10%. כאשר מכבים את ה-align מקבלים את הערכים הגולמיים של כל נייר (שים לב לניואנסים של איך PR, NTR, TR משפיע על ערכים גולמיים). הסיבה שאתה מקבל ערכים סופיים שונים (1.08 לעומת 2.59) זה כי הפונק׳ show עושה גם כברירת מחדל trim - גוזמת את ההיסטוריה ככה שההשוואה תתחיל רק מהתאריך שבו יש מידע על כל הני״ע, ככה שככל שאתה משווה פחות ני״ע יש יותר היסטוריה מהני״ע הכי וותיק, ועם הזמן הערך שלו עולה יותר והערך הסופי ביחס להתחלה עולה, למשל SPY 2.59 אומר ש-SPY עלה ב-159%.
- יש תמיד את ה-mode (PR, NTR, TR) בגרף כי ככל שעושים יותר השוואות מסוגים שונים, אם לא מציגים את ה-mode אפשר בקלות להתבלבל ולטעות. אם תמיד מציגים אותו זה מבהיר אבל יכול גם להציק.
- גם הפונק׳ get וגם show תומכות ב-cache=False בשביל לוותר על ה-cache. אפשר גם לכבות אותו גלובאלית עם:

קוד:
conf.conf_cache_disk = False
conf.conf_cache_memory = False
 
שמח שהשינויים מוזגו!

קודם כל המון תודה!
מיזגתי את השינויים, אבל גם נטרלתי חלק מהדברים.
- הניקוי האוטומטי של הפלט עשה לי בעיות, גם זרק שגיאה וגם גרם להודעה ״קובץ השתנה מבחוץ״ כל הזמן. כרגע זה כבוי, אבל הוספתי סקריפט שמנקה את כל המחברות. באופן כללי לגבי ניקוי מחברות בשמירה - אני פחות אוהב את זה כי זה מאד נח לחזור למחברת מחקר מלפני חודש ולראות את הגרפים גם מבלי להריץ הכל מחדש. מתלבט בנושא.
- כן ראיתי שהניקוי של הפלט עושה בעיות.. מה שאפשר לעשות זה לעשות ריפו רק ל research ולשים אותו כ submodule של הריפו של retropy. ככה גם כשעושים clone לא מקבלים את כל הקבצים, וגם לא רואים את הקבצים בתור modified (ב submodule כן תראה modified content, אבל לא יהיה אפשר לעשות לו commit בריפו הראשי).

- ה-cache משתמש רק בקבצים המקומיים, בלי S3, אבל חוץ מזה הכל נשאר. מעניין מאד הרעיון של S3. באופן כללי לגבי ה-cache, זה אכן לא רעיון טוב לשמור אותו ב-git, הכוונה הייתה שמחברות ירוצו מהר יותר גם אם קצת לא עדכניות, אבל לשמור את זה בגיט באמת הפך למפלצת.
- ה cache של S3 עשה בעיוץ? עשיתי את זה ככה שאם הוא נכשל הוא מנסה להביא את המידע מקובץ פשוט.

- מחברת ה-Demos הייתה לא מעודכנת (אני לא משתמש בה), בכל אופן עדכנתי אותה והמחברות שאני עובד איתן בשוטף והן עדכניות רובן זה תחת ה-Research.
- העפתי עוד כמה דברים שהיו מיותרים בריפו, הוא תופס עכשיו 2.5 מגה (אם עושים clone depth 1). כדי להפטר מכל ההיסטוריה של הקבצים הכבדים צריך להתאמץ קצת יותר.
כן, אולי אחרי שה- research יהיה ב submodule יהיה אפשר לחתוך דברים מההיסטוריה.

- הדוגמא שקישרת אליה לא עולה.
הבנתי למה הלינק לא עבד, זה אמור לעבוד:
https://mybinder.org/v2/gh/byohay/Retropy/master?filepath=Demos.ipynb

- לגבי יחידות המידה: כברירת מחדל, הפונק show מניחה שאתה משווה בין כמה ני״ע, והיא עושה להם align (פרמטר אופציונאלי), המשמעות היא שהם כולם מתיישרים להתחיל ב-1, אז הערך 1.1 אומרש הני״ע הזה עלה ב-10%. כאשר מכבים את ה-align מקבלים את הערכים הגולמיים של כל נייר (שים לב לניואנסים של איך PR, NTR, TR משפיע על ערכים גולמיים). הסיבה שאתה מקבל ערכים סופיים שונים (1.08 לעומת 2.59) זה כי הפונק׳ show עושה גם כברירת מחדל trim - גוזמת את ההיסטוריה ככה שההשוואה תתחיל רק מהתאריך שבו יש מידע על כל הני״ע, ככה שככל שאתה משווה פחות ני״ע יש יותר היסטוריה מהני״ע הכי וותיק, ועם הזמן הערך שלו עולה יותר והערך הסופי ביחס להתחלה עולה, למשל SPY 2.59 אומר ש-SPY עלה ב-159%.
הבנתי, תודה.

- יש תמיד את ה-mode (PR, NTR, TR) בגרף כי ככל שעושים יותר השוואות מסוגים שונים, אם לא מציגים את ה-mode אפשר בקלות להתבלבל ולטעות. אם תמיד מציגים אותו זה מבהיר אבל יכול גם להציק.

אם הבנתי נכון, כל קרן עובדת בשיטת עקיבה, TR, NTR או PR. אז כיצד אפשר לבחור מודים שונים עבור אותה קרן?

באופן כללי, מה שאני מנסה לעשות זה לבדוק בעצמי כמה אני מפסיד כשאני משקיע במדדים מחקים S&P 500 בארץ שעוקבים בשיטת NTR (אם הבנתי נכון אני עשוי לקבל עד 30% הבדל, בפועל השוני כנראה קטן יותר). כששיניתי את המוד ל NTR בלינק שנתתי (השורה הרביעית), הערכים שקיבלתי היו גבוהים באופן לא הגיוני.
 
נערך לאחרונה ב:
- כן ראיתי שהניקוי של הפלט עושה בעיות.. מה שאפשר לעשות זה לעשות ריפו רק ל research ולשים אותו כ submodule של הריפו של retropy. ככה גם כשעושים clone לא מקבלים את כל הקבצים, וגם לא רואים את הקבצים בתור modified (ב submodule כן תראה modified content, אבל לא יהיה אפשר לעשות לו commit בריפו הראשי).
נמנעתי עד היום מלהתעסק עם git sub modules אז אין לי הכרות איתם ומעדיף לא לסבך.


- ה cache של S3 עשה בעיוץ? עשיתי את זה ככה שאם הוא נכשל הוא מנסה להביא את המידע מקובץ פשוט.
לא ה-s3 עצמו עשה בעיות, אלא משהו בקוד לא הסתדר, זרק שגיאה על משתנה לא מוכר.

אם הבנתי נכון, כל קרן עובדת בשיטת עקיבה, TR, NTR או PR. אז כיצד אפשר לבחור מודים שונים עבור אותה קרן?
אם הקרן צוברת, שינוי ה-mode לא עושה כלום.
אם הקרן מחלקת וגם יש את המידע של הדיבידנדים המחולקים, אז:
מוד PR - מראה את מחיר הקרן (מחיר המסחר, זה ללא דיבידנדים)
מוד TR - לוקח את מחיר הקרן, וכל פעם שיש חלוקת דיבידנד ״משקיע״ מחדש בקרן, אז זה יוצא ה-TR של הקרן.
מוד NTR - עושה אותו דבר כמו TR רק לפני כל השקעה מחדש מנכה 25% מס מהדיבידנד.

בקרן צוברת כמו קרן ישראלית או אירית, אין לי את מידה הדיבידנד לכן כל המודים יוצאים אותו דבר.

באופן כללי, מה שאני מנסה לעשות זה לבדוק בעצמי כמה אני מפסיד כשאני משקיע במדדים מחקים S&P 500 בארץ שעוקבים בשיטת NTR (אם הבנתי נכון אני עשוי לקבל עד 30% הבדל, בפועל השוני כנראה קטן יותר). כששיניתי את המוד ל NTR בלינק שנתתי (השורה הרביעית), הערכים שקיבלתי היו גבוהים באופן לא הגיוני.
לא הבנתי איזה חלק בדיוק.
תגיד לי איזה קרנות אתה רוצה להשוות ואדגים מה אני עושה.
 
לא הבנתי איזה חלק בדיוק.
תגיד לי איזה קרנות אתה רוצה להשוות ואדגים מה אני עושה.

אני רוצה להשוות את SPY עם קרנות ישראליות מחקות אחרות שעוקבות אחר המדד s&p 500, דהינו תכלית, קסם, מגדל IBI, פסגות.
זה הקוד שאני הרצתי:

tahlit = "5113998@TASE = תכלית"
kesem = "5124482@TASE = קסם"
migdal = "5122627@TASE = מגדל"
ibi = "5117601@TASE = אי בי אי"
psagot = "5127469@TASE = פסגות"

show("SPY", tahlit, kesem, migdal, ibi, psagot)
(האנגלית דפקה את הטקסט.. אבל בהעתק-הדבר זה בסדר)

מה שרציתי לבדוק זה את ההיפותזה שמכיוון שקרנות בישראל עוקבות בשיטת NTR, התשואה שלהן נמוכה יותר מאשר קרן שעוקבת בשיטת TR. אני לא מצליח לראות את ההיפותזה מתקיימת לפי הקוד ששמתי למעלה, אבל אני לא בטוח למה :(
 
אני רוצה להשוות את SPY עם קרנות ישראליות מחקות אחרות שעוקבות אחר המדד s&p 500, דהינו תכלית, קסם, מגדל IBI, פסגות.
זה הקוד שאני הרצתי:


(האנגלית דפקה את הטקסט.. אבל בהעתק-הדבר זה בסדר)

מה שרציתי לבדוק זה את ההיפותזה שמכיוון שקרנות בישראל עוקבות בשיטת NTR, התשואה שלהן נמוכה יותר מאשר קרן שעוקבת בשיטת TR. אני לא מצליח לראות את ההיפותזה מתקיימת לפי הקוד ששמתי למעלה, אבל אני לא בטוח למה :(
שמתי כאן דוגמא איך אני עושה השוואה כזאת (שלב אחרי שלב) עם הערות.

לגבי המסקנות מהתוצאה?
1. צריך להסתכל בפאנדר מה יכול לגרום להבדלים בין הקרנות
2. בגלל שהקרנות מחזיקות חוזים ופקדונות\אגח שקליים, ההפרשים בריביות ושינויים קצרי טווח בשערי מטח יכולים להכניס ״רעש״ למשוואה. @TunaGolem יודע יותר טוב להסביר.
3. המיסוי בעת מימוש על הקרנות הישראליות יהיה גבוה יותר כי כל הרווח שלהן הוא הוני מהשקל הראששון, ואילו ב-SPY NTR בסיס המס הממוצע עולה קצת כל פעם שמשקיעים מחדש דיבידנדים בשוק עולה.
 
האם יש אפשרות לבצע ניתוח portfolio עם אלוקציה באחוזים לכל הנכס אבל לא לפי שם נייר אלא לפי משתנה?
לדוגמא:
כמו:
show("SPY:70|TLT:30")
רק להחליף את TLT במשתנה tlt_ils כאשר:
tlt_ils = convertSeries(tlt, "USD", "ILS")
?
 
נושאים דומים
פותח הנושא כותרת פורום תגובות תאריך
ה Backtesting גלגול חוזים עם Retropy שוק ההון 3

נושאים דומים

Back
למעלה