發表文章

投資組合效率前緣之研究:以三支美國知名公司股票為例

平均數-變異數(mean-variance)的有效投資組合邊界,其特性早已在相關文獻中被廣泛討論。然而,當資產數量超過三個時,一般做法多半是用圖形來呈現定性的結果。 本文則將有效投資組合邊界以明確的數學形式推導出來,並驗證過去對這些邊界特性的各種主張是否正確。其中最重要的推論 ——分離定理(separation theorem)——是在共同基金定理(mutual fund theorem)的架構下被提出並加以證明。 此外,本文也指出,在某些條件下,傳統用圖形方式推導有效投資組合邊界的方法其實是不正確的。 共同基金理論 在滿足所述條件的情況下,假設有 (m) 個資產,可以由這些資產構造出兩個投資組合(也就是「共同基金」)。對於所有風險趨避的投資人而言,如果他們是根據投資組合的平均報酬與變異數來最大化效用,那麼無論是從原本的 (m) 個資產中選擇投資組合,還是只在這兩個共同基金之間進行配置。 假設有 (m) 個資產,並且存在一個報酬為 (R) 的無風險資產,則會存在一對唯一的有效(efficient)共同基金:其中一個只包含風險資產,另一個只包含無風險資產。 對所有風險趨避的投資人而言,如果他們是根據投資組合的平均報酬與變異數來最大化效用,那麼在做選擇時,無論是從原本的 (m+1) 個資產中建構投資組合,還是只在這兩個共同基金之間進行配置,對他們來說是沒有差別的。 而上述結論成立的充要條件是:(R

官詳和Entry輸入文字變數textvariable字型font

圖片
將OptionMenu改成Entry 將OptionMenu改成Entry完整程式碼 from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 import math #從函式庫 math 輸入所有 * 方法 from time import * from random import * class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定必然 def __init__ initiate發起 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * math.pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*math.cos(i*self.u)) self.y.append(self.cy + self.cr*math.sin(i*self.u)) def drawLine(self, x0, y0, x1, y1): canvas.create_line(x0, y0, x1, y1, width = self.w, fill=self.c) def draw(self): #類別的方法 secondTime = second.get() #取得輸入的second變數,當作區域變數secondTime for i in range( int(self.s * 1.5) -...

官詳和類別,必須有 兩底線init兩底線的起始initate函數

圖片
class Person: #建立類別,必須有 兩底線init兩底線的起始initate函數 def __init__(self, name, age): self.name = name self.age = age def myfunc(self): print("嗨嗨!我的" ) print("名字是 " + self.name) print("嗨嗨!我的\n名字是 " + self.name) #字串中\n換列 p1 = Person("官詳和", 36) p1.myfunc() print("印出p1.name: " + p1.name ) from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 import math #從函式庫 math 輸入所有 * 方法 from time import * from random import * class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定必然 def __init__ initiate發起 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * math.pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*math.cos(i*self.u)) self.y.append(self.cy + self...

官詳和python時間函式time.sleep

圖片
from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 from math import * #從函式庫 math 輸入所有 * 方法 from time import * #取代import time class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定必然 def __init__ initiate發起 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*cos(i*self.u)) self.y.append(self.cy + self.cr*sin(i*self.u)) def draw(self): #類別的方法 for i in range( int(self.s * 1.5) - self.t): canvas.create_line(self.x[i], self.y[i], self.x[i + self.t], self.y[i + self.t], fill = self.c, width = self.w) sleep(0.5) #睡覺一秒,如果import time必須time.sleep(0.5) tk.update() #將視...

官詳和python, input, str, float

圖片
VS code編輯環境截圖 VS code程式碼 from math import * def abc(r): print("官詳和輸入的半徑 "+ str(r)) print("圓面積: "+str(pi*r*r)) print("圓周長: "+str(pi*r*2)) print("球體積: "+str(pi*r*r*r*4/3)) print("球表面積:"+str(pi*r*r*4)) def tri(z): print("官詳和輸入的角度 " + str(y)) print("正弦sin "+str(sin(z))) print("餘弦cos "+str(cos(z))) def group(r, t): abc(r) tri(t) r = float(input("輸入半徑: ")) y = float(input("輸入角度360度單位: ")) t = y/180*pi group(r,t) 說明影片

官詳和python輸入import數學math函式庫define定義function函數

圖片
from math import * #官詳和從math輸入所有函式 # import math #官詳和函式庫 def abc(r): #定義函數abc print("圓面積: "+str(pi*r*r)) print("圓周長: "+str(pi*r*2)) print("球體積: "+str(pi*r*r*r*4/3)) print("球表面積:"+str(pi*r*r*4)) def tri(z): print("正弦sin "+str(sin(z))) print("餘弦cos "+str(cos(z))) def group(r, t): abc(r) tri(t) r , t = 1, pi/3 #半徑, 60度=pi/3 group(r,t) import math from math import * 心得使用ul=undered list標記語言 輸入函式庫,例如比較 import math from math import all 自訂函數 def 函數名稱() Define Definite當然的 Definition 常常被利用於模組化程式碼

官詳和python類別class函數function

圖片
VS Code截圖 VS Code程式碼 from tkinter import * #從函式庫 tkinter 輸入所有 * 方法 from math import * #從函式庫 math 輸入所有 * 方法 class Regular: def __init__(self, cx, cy, cr, s, t, c, w): #類別共同的設定 self.cx, self.cy, self.cr = cx, cy, cr #取得中心座標cx, cy, 半徑cr self.s, self.t = s, t #取得邊角數目s,t尖銳程度,取代原來的k = s.get() self.c, self.w = c, w #取得顏色c,寬度w self.u = 2 * pi / self.s #使用模組 math 圓周率 pi self.x, self.y = [], [] for i in range( int(self.s * 1.5)): self.x.append(self.cx + self.cr*cos(i*self.u)) self.y.append(self.cy + self.cr*sin(i*self.u)) def draw(self): #類別的方法 for i in range( int(self.s * 1.5) - self.t): canvas.create_line(self.x[i], self.y[i], self.x[i + self.t], self.y[i + self.t], fill = self.c, width = self.w) def show(): #畫圖 poly = Regular(cx.get(), cy.get(), cr.get(), s.get(), t.get(), c.get(), w.get()) polyList.append(po...