返回列表 上一主題 發帖

[已解決]方程式求解

本帖最後由 hugh0620 於 2011-10-19 15:52 編輯

回復 3# jiuhtsair


        樓主~ 你的舉例有些問題
        小弟想利用窮舉法來求解3日平均線在何時可以穿破21日平均線。
        今日收盤價為7358,明日的3ma=sum(B6:B71)/3,明日21ma=sum(B51:B71)/21。
        3日均線的算法有問題,應該是3ma=sum(B69:B71)/3        
        其中,B71為明日收盤價。
        想利用EXCEL VBA計算明日收盤下跌多少時,3ma的值會小於或等於21ma?

       僅對於下跌多少的方式來撰寫~ 希望對你有幫助
  1. Sub 股價推估()
  2. A = Sheet1.Range("B65536").End(xlUp).Row '先取得最後一筆的列數,往回推

  3. B1 = Application.Sum(Sheet1.Range(Cells(A + 1, 2), Cells(A - 19, 2))) '計算21天總股價
  4. B2 = Application.Sum(Sheet1.Range(Cells(A + 1, 2), Cells(A - 1, 2)))  '計算3天總股價

  5. A1 = B1 / 21  ''A1=21天均線
  6. Sheet1.Range("D65536").End(xlUp).Offset(1, 0) = A1

  7. A2 = B2 / 3   ''A2=3天均線
  8. Sheet1.Range("C65536").End(xlUp).Offset(1, 0) = A2

  9. I = Int(B2 / 2)  '採用前面兩日的平均價為基準,推測下跌多少會貫穿21日均線

  10. Do
  11.     A1 = (B1 + I) / 21
  12.     A2 = (B2 + I) / 3
  13.        Sheet1.Cells(A + 1, 2) = I
  14.     Sheet1.Range("D65536").End(xlUp).Offset = A1
  15.     Sheet1.Range("C65536").End(xlUp).Offset = A2
  16.     I = I - 0.1                    ' <---修正股價的精準度

  17. Loop Until A1 > A2        'A2(3天均線)小於A1(21天均線)就停止


  18. End Sub
複製代碼
學習才能提升自己

TOP

        靜思自在 : 人要知福、惜福、再造福。
返回列表 上一主題