發表文章

劉任昌使用EXCEL:MATCH,INDEX函數

圖片
最大值 位置 最佳關鍵點 1.138701 28 2.70% =MAX(N2:AR2) =MATCH(AS2,$N2:$AR2,0) =INDEX($N$1:$AR$1,$AT2) 0.528531 1 0.00% 10.315605 14 1.30% 3.640566 30 2.90%

波克夏2017股東會,突破20日平均線買賣決策

圖片
制定決策規則 買賣決定:設定I欄位 if 前部位< 1(非多方)且收盤>MA20+關鍵點,則部位1 else if 前部位>-1(非空方)且收盤<MA20-關鍵點,則部位-1 else 維持前部位 報酬計算:設定J欄位 if 前部位=1則收-前收 elseif 前部位=-1則前收-收 else 0 儲存格 I21與J21公式如下,記得要定義名稱「關鍵點」。 =IF(AND(I20<1,F21>H21*(1+關鍵點)),1,IF(AND(I20>-1,F21<H21*(1-關鍵點)),-1,I20)) =IF(I20=1,G21-G20,IF(I20=-1,G20-G21,0)) 講解影片 完成的EXCEL檔案. https://docs.google.com/spreadsheets/d/1ndnfXFOnk9wcjtdWUXCcmMjipGK3zdov/edit?usp=sharing&ouid=100515243601934183021&rtpof=true&sd=true

劉任昌EXCEL股票圖SPY平均線

圖片
日期 成交量 開 高 低 收 2023/1/3 74,850,700 384.369995 386.429993 377.829987 380.820007 2023/1/4 85,934,100 383.179993 385.880005 380 383.76001 2023/1/5 76,970,500 381.720001 381.839996 378.76001 379.380005 2023/1/6 104,189,600 382.609985 389.25 379.410004 388.079987 2023/1/9 73,978,100 390.369995 393.700012 387.670013 387.859985 2023/1/10 65,358,100 387.25 390.649994 386.269989 390.579987 2023/1/11 68,881,100 392.230011 395.600006 391.380005 395.519989 2023/1/12 90,157,700 396.670013 398.48999 392.420013 396.959991 2023/1/13 63,903,900 393.619995 399.100006 393.339996 398.5 2023/1/17 62,677,300 398.480011 400.230011 397.059998 397.769989 2023/1/18 99,632,300 399.01001 400.119995 391.279999 391.48999 2023/1/19 86,958,900 389.359985 391.079987 387.26001 388.640015 2023/1/20 91,806,400 390.100006 396.040009 388.380005 395.880005 2023/1/23 84,178,800 396.720001 402.649994 395.720001 400.630005 2023/1/24 59,524,900 398.880005 401.149994 397.640015 400.200012 2023/1/25 84,800,300 39...

電子試算表發明人

圖片
1978年,哈佛大學EMBA學生在教室中發明電子試算表(electronic spreadsheet),這個發明永遠改變人們利用電腦在商業應用的方式(forever changed how people use computers in business.)。後來,賈伯斯請比爾蓋茲為蘋果電腦開發相同軟體,稱為EXCEL,比爾蓋茲要求EXCEL也可以賣到其他平台,最後導致Mac電腦與IBM相容電腦並存。 控制列高指令line-height: 1.5,段落縮排指令text-indent: 2em

劉任昌python輸入openpyxl處理EXCEL檔案

圖片
from openpyxl import load_workbook #劉任昌指導蕭穎婕等學生專題 book = load_workbook(filename='wb.xlsx') print(book.sheetnames) #列出所有工作表 """以下也被註解暫時不執行python語言註解 #後面不執行 前後三個引號的部分也不執行 都是註解用 sheet = book['20200101p'] #工作表 rowBegin = 4 #起始列 rowEnd = 10 #結束列780 criticalInc = 0.01 criticalDes = 0.01 localH = sheet.cell(row=rowBegin, column=3).value localL = sheet.cell(row=rowBegin, column=4).value status = 0 wealth = 0 for x, row in enumerate(sheet.iter_rows(min_row = rowBegin, max_row = rowEnd)): rowNo = x + rowBegin #串列編號 x 起始於 0 dayH = row[2].value #當日最高C欄 dayL = row[3].value #當日最低D欄 dayC = row[4].value #當日收盤E欄 if status == -1: #檢測波段高 localH = dayH elif localH dayL: localL = dayL sheet.cell(row = rowNo, column = 6).value = localH #寫入波段高於F欄 sheet.cell(row = rowNo, column = 7).value = localL #寫入波段低於G欄 if status (1 + criticalInc)*localL...

劉任昌EXCEL運算列表grid search獲得最佳參數

圖片
何玉潔 運算列表 A784放置目標函數 漲幅最大 =MATCH(GA784,B784:FY784,0) match index =INDEX($B$783:$FY$783,GB784) 最大 最大的位置match找到 11205.56 73 7.3% 下跌突破點 77 7.7% 上漲突破點 心得 grid search網格搜尋,數值方法,利用EXCEL運算列表,列變數放置不同的跌突破點,欄變數放置不同的漲突破點。測試從0.1%到18%。下次說明算得的參數是否有意義?沒有意義!沒有意義的程式交易演算法不可靠,不過是形成交易紀律的參考。

劉任昌python處理excel檔案

圖片
import openpyxl #劉任昌輸入import openpyxl處理EXCEL的函式庫 book = openpyxl.load_workbook(r'wb.xlsx') #開啟EXCEL工作簿wb.xlsx print("1. 列出所有工作表名稱") sheetNames=book.sheetnames #所有工作表的集合 for name in sheetNames: print(name) print("2. 針對特定工作表, 列出前面數列") sheet = book["python"] #將工作表python稱為sheet for row in sheet.iter_rows(min_row=1, max_row=3, min_col=1, max_col=5, values_only=True): print(row) print("3. 列出工作表所有內容") x = sheet["A1"].value #將A1的年月日存在x sheet["A1"] = "劉任昌" + x sheet["F1"] = "波段H" sheet["G1"] = "波段L" sheet["H1"] = "部位" sheet["I1"] = "損益" sheet["F2"], sheet["G2"], sheet["H2"], sheet["I2"]=sheet["C2"].value, sheet["D2"].value, 0, 0 for row in sheet.iter_rows(min_row=1, max_row=3, min_col=1, max_col=9, values_only=True): print(row) book.save(...