潮流特區

最新文章

玛瑙手串深藏不露的小秘密

玄學星相
熊神進・2024-06-25

#为什么女生喜欢佩带玛瑙手串 一位网红留言给笔者,她说自从请了笔者的开光玛瑙手串,她接了很多大客户,生意翻倍,笔者请她多些做烟供,布施三恶道。 笔者留意到在国内很多年青姑娘都喜欢佩带玛瑙手串,尤其是刚刚大学毕业的女生,有一次我在北京大学工作时,发现有几位女学生,她们手上佩带了玛瑙手串。 玛瑙手串的价格不贵,一条原石手串,目前是300元以下,这是一个大众可以接受的价格。玛瑙是地球上最常见的矿石,人们早在3000多年前就发现它的存在,可是,厉害的商人在「阿拉善玛瑙」(几十块元一斤)原石的表面进行人工染色来提升鲜艳,有些更将多个「阿拉善玛瑙原石」粘合在一起,制造成较大的形态和斑块,从而提高卖价。 在风水师傅的开光过程中,人工打磨的石太过光滑,我们很难把玄粉浸入石髓, 失去效果。 自古以来,风水师傅便把玛瑙视为宝石中的“第三眼”,象征着「希望」。一条貌不惊人的玛瑙(暗红/暗黑)可改善内分泌,加强血液循环。 大家知不知道为什么大学毕业后,我们做第一份工总是有些不愉快,理由是什么,很简单,就是年轻入世未深,喜欢表现自我,日子久了他/她们才知道七分人事三分工作的道理。我常常建议他/她们佩带玛瑙手串,第一是因为价格大众化,不是很贵;第二是因为它可以产生欢笑正能量,减少我们对工作的不满。 很多年青人喜欢「阿拉善玛瑙」,理由是他/她们被七彩色素迷惑,我认为原生态的玛瑙原石才是符合年轻人的需要,它可以平顺急躁情绪,走上成功之路。 笔者读过水晶检测课程,对于玛瑙手串是有要求的,在巴西工作的时间,我拣选的原石必须含有二氧化硅的水(熔岩本身中的硅酸盐成分分解所产生),因为这种岩石中的蒸气空腔可以给我把元气打进去,形成更大的空腔,产生正能量。 目前这些手串珠子是10mm左右,适宜体重55至65公斤女生佩带,可以佩带左手,亦可以放在包包里,我们建议回家脱下。 玛瑙手串是给女生正能量,如果妳想爱情美满,工作顺利,妳可以佩带这款。

玛瑙手串深藏不露的小秘密

宗教玄學
熊神進・2024-06-25

#为什么女生喜欢佩带玛瑙手串 一位网红留言给笔者,她说自从请了笔者的开光玛瑙手串,她接了很多大客户,生意翻倍,笔者请她多些做烟供,布施三恶道。 笔者留意到在国内很多年青姑娘都喜欢佩带玛瑙手串,尤其是刚刚大学毕业的女生,有一次我在北京大学工作时,发现有几位女学生,她们手上佩带了玛瑙手串。 玛瑙手串的价格不贵,一条原石手串,目前是300元以下,这是一个大众可以接受的价格。玛瑙是地球上最常见的矿石,人们早在3000多年前就发现它的存在,可是,厉害的商人在「阿拉善玛瑙」(几十块元一斤)原石的表面进行人工染色来提升鲜艳,有些更将多个「阿拉善玛瑙原石」粘合在一起,制造成较大的形态和斑块,从而提高卖价。 在风水师傅的开光过程中,人工打磨的石太过光滑,我们很难把玄粉浸入石髓, 失去效果。 自古以来,风水师傅便把玛瑙视为宝石中的“第三眼”,象征着「希望」。一条貌不惊人的玛瑙(暗红/暗黑)可改善内分泌,加强血液循环。 大家知不知道为什么大学毕业后,我们做第一份工总是有些不愉快,理由是什么,很简单,就是年轻入世未深,喜欢表现自我,日子久了他/她们才知道七分人事三分工作的道理。我常常建议他/她们佩带玛瑙手串,第一是因为价格大众化,不是很贵;第二是因为它可以产生欢笑正能量,减少我们对工作的不满。 很多年青人喜欢「阿拉善玛瑙」,理由是他/她们被七彩色素迷惑,我认为原生态的玛瑙原石才是符合年轻人的需要,它可以平顺急躁情绪,走上成功之路。 笔者读过水晶检测课程,对于玛瑙手串是有要求的,在巴西工作的时间,我拣选的原石必须含有二氧化硅的水(熔岩本身中的硅酸盐成分分解所产生),因为这种岩石中的蒸气空腔可以给我把元气打进去,形成更大的空腔,产生正能量。 目前这些手串珠子是10mm左右,适宜体重55至65公斤女生佩带,可以佩带左手,亦可以放在包包里,我们建议回家脱下。 玛瑙手串是给女生正能量,如果妳想爱情美满,工作顺利,妳可以佩带这款。

《魔物獵人世界》《魔物獵人崛起》通用心得

手機‧電玩
MacauYeah・2024-06-25

好久沒有寫Game心得分享,那是因為筆者也真的很久沒有開新坑。最近因為《魔物獵人》有新作預告,大家又好好地重新把《魔物獵人世界》拿出來練練手。筆者也順便把過去的買了沒有怎玩的《冰原》DLC拿出來,好好地玩一遍,總算完了一個心願。 因為玩了兩款近作,對於魔物獵人系統多少有一點入門心得,就來梳理一下,方便新朋友入坑時不再碰壁。 防具 隨著主線推進,不單武器可以強化,防具也可以繼續強化。強化等級因為階段推進而有突破。筆者以前就是不知道這件事,前期以為防具早已升滿,但後來一直貓車,才知道防具防禦力太低,需要經過重複強化提高防禦力。 防禦、體力增幅技能 防禦力、體力最大值兩者當然是越高越好。但在推進度前期,什至後期因為需要額外技能,防禦、體力不一定全滿。有必要時防禦增幅時選一半,體力增幅點滿比較好。因為後期挨怪物一套連招,即使防禦多高,也不能不回血。而體力增幅通常較易點滿,避免因為異常狀態影響而被連招到死,可以增加容錯率。而且後期回血道具一般直接使用秘藥,一次過回滿血條。所以筆者認為體力增幅比防禦增幅更有效。 防禦力疊加 若果你像筆者一樣菜,後期必需要使用各種方式疊加防禦力。主要方式有三個。食貓飯、道具持有、道具使用。貓飯在《魔物獵人世界》和《魔物獵人崛起》,都有機率成份,不過好在後期,總有票卷可以提升機率,筆者都偏向把投資在防禦力上。道具持有,主要在XX之爪和XX護符之上,帶著出戰就好,兩者最多各帶一份,但可以疊加。道具使用,就是硬化藥、硬化粉塵、忍耐種子。三種可以同時使用,可疊加,但硬化粉塵、忍耐種子有時效。 精靈加護 有一定機率減少傷害,但筆者後期不夠技能欄位,沒有去配。它也是增加容錯的機率,但防禦、體力、精靈加護全要的話,攻擊技能就更少了。所以筆者放棄它。 龍車 中後期,魔物都會四處跑,發怒時更是撞來撞去,總之就是讓你打空氣。筆者初時也不知道怎樣對策,總是跟著魔物屁股走。但其實這樣更費時,其實你可以原地等待,有空就調合或為武器上Buff,反正它很快就會回頭。想更有效的提升DPS,應該花時間去量度回來時的落點。魔物從遠處過來,但其實中途很少變向,比較有條件預判和輸出。若為團戰,因為有隊友分散仇恨,才需要主動追上魔物。 打點 初接觸這系列時,筆者就不斷看到【肉質】這一詞,但其實玩到現在,筆者都不太掌握。但通常都是集中打魔物的頭就了事。當打頭都出現彈刀時,再攻擊其他地方。有條件有心情,可以逐隻魔物研究,長期打到有效位置,傷害差很多,才能會易出現魔物倒地的狀態。 配裝 別人的配裝,其實自己並不一定能用,特別是那些TA影片(Time Attack)。MH系統的技能取得,都很有運氣成份,所以想要的技能不一定馬上能配到,大家主要去找自己武器的核心技能就OK。有些武器可能有多個流派,而且隨著時間累積,素材的隨機出現,我們有必要定期整理裝備組合。不同攻略網站,都會分享畢業裝,不過筆者到現在,都未去到這個攻守兼備的狀態。還是忘提畢業裝吧,後期的強怪,還是要針對性地重點挑整。 救援、團戰 有時卡關,有條件就叫救援吧,不必刻意自己打。因為進度限制,主線沒有推進的話,強化功能不開放,死磨也不一定有裝備提升。來救援的人一般是已推完主線,回來刷素材的,他們有較高的防禦去吸收傷害。他們不一定比你強,但貓的機率就比較低。但也不排除有時人沒打完主線就來抱大腿,結果搭沉船一起貓車。所以一定一定要準備【生命粉塵】,有必要時,就為殘血的同伴回血。那怕團友很強,也有機會出現異常狀態疊加的情況,為他回個血,他能更加集中輸出。 主機版都要買額外的會員制,才能聯機求助。PC版就沒有這個限制,接通網路就可以招外援。筆者推薦PC版,因為會員制的其他贈品都很雞肋,還不如PC版來得清靜。 以上,就是筆者玩完《魔物獵人世界》和《魔物獵人掘起》兩作的心得,雖然筆者還是很菜,但至少後期也玩得下去。希望以上各點可以為沒通關的朋友帶來實際的幫助。

找到了法螺,一切好开始

宗教玄學
熊神進・2024-06-24

相傳釋迦牟尼誕生時,天人獻下八寶。藏語把佛門八寶稱「扎西達杰,亦叫達杰明蘇」,而我們淨土宗稱「右旋白海螺」,南方地區大部份信衆稱它「法螺」,而風水師傅叫它做「鎮宅法寶」。 古代的電影都常常看到男武士吹「法螺」, 其實「法螺」有三個明顯用途: 法螺用來召集僧衆。 古人在深山修行時,爲避免猛獸追逐, 可吹起「法螺」驅散野獸。 法螺可以呼喚天神,《千手千眼觀世音菩薩廣大圓滿無礙大悲心陀羅尼經》有一句話說:“若爲召呼一切諸天神,當用寶螺手。” 法螺降伏邪魔外道。 在風水學上, 筆者還發現「法螺」可以幫助男女解脫感情煩惱, 因爲「右旋白海螺」是佛的法音,其力量可以廣大悠揚,使一切煩惱人得到解脫。紅塵世界, 男女之間的感情總沒有對與錯, 在筆者眼中, 男女的愛都是債, 你不是前世欠了他, 今生又爲何會遇上?很多女生(已婚,未婚)都會把「法螺」放在家裏, 就是爲瞭解脫俗世煩惱。 「右旋白海螺」是佛教中最重要的法器之一,我們都是把它用來供養上師、三寶。在北方地區, 信衆會把它放在家裏、壇上。在西藏,最受尊崇,被視爲三千世界回蕩不息的聲音。在南方,有些女生把它放臥室,用來趕走「爛桃花」。 「右旋白海螺」是一種佛相, 這是因爲佛陀說法之音好像法螺般美妙,佛陀臍紋以及所有的毛髮都是右旋,眉間衪的白毫右旋而威嚴,這就是佛教說的右旋白螺之相。 據佛經記載:聞法螺聲可滅諸重罪。《不空罥索神變真言經》中說:“若加持螺,諸高處望,大聲吹之,四生之衆生,聞螺聲滅諸重罪,能受身舍已,等生天上。”這段話告訴我們,當你犯了大罪,你供養「右旋白海螺」, 你可以减罪。什麽是大罪,一位女生做了「打胎」「人流」,這就是大罪。 「右旋白海螺」的圖案有幾款, 款款都是佛教人士的心血結晶, 筆者熊神進一直把它們放在尼泊爾精舍, 白色是海螺殼, 銀色是尼泊爾銀的佛吉祥圖案, 手工認真, 由于供養久長,又是天然的,總有色差, 如果追求完美的讀者, 不應該考慮擁有。 人生總有起落, 如果遇到事業不順, 婚姻不好, 健康出問題的日子, 我們可以拿起「右旋白海螺」向西方吹幾口, 在玄學上有個說法: 一吹順風順水; 二吹時來運到; 三吹心想好事用。 佛有八寶添吉祥, 你家中有多少件寶?

github flow - github 開發流程

科技新知
MacauYeah・2024-06-20

那些年那個很穩定卻又不受歡迎的 git flow 開發流程 多年前,朋友就向筆者介紹git的團隊整操作流程。筆者深思過後,的確實用,那些年的git-flow,很美滿,由開發、測試,到發佈、修補漏動(backport),都有清楚明確的指引。 原作者連結:git-flow 大家如果沒有更複雜的需求,真的可以照搬,筆者也很推這一個模型。 但在長期推廣下,筆者發現大部份人其實都不熟git的基本操作,什至連git graph也不看,現在看git flow,就更不可能接受。那怕是有常用git的個人團隊,也是不怎使用分支模型。 前一兩年,筆者也不懂,筆者也努力地簡化git flow。例如把master和develop合而為一,但最後也是少有人可以接受,很多人還是卡在分支那邊,對checkout、merge還是很陌生。在跟更多不同人的協作過後,筆者總於意會到一件事。其實大部份人,只想知道最後、最新的狀態,只會更新 master / main ,也因為個人開發,所以連衝突也不會有,更不需要使用merge。那怕是少型團隊,頂多也是維護main的衝突,間中用用merge,而checkout還是用不著。 其實這個情況,並不限於小型團隊。因為 web app 和 DevOps 的流行,所以越來越少機會要維護多個舊的穩定版本。大家都專心於最後一個開發及發佈版本就完事,用戶的某個版本有問題?更新到最新版本吧。(註:越底層的應用開發模式,因為相容性問題,不可能只保留一個穩定版本。) 那麼我們就大力簡化吧 - github flow 開發流程 既然大部份情況,大家都只在乎 main / master / 預設分支,那我們也沒有必要跟著複雜的 git flow 走。但在 DevOps 的角度下,為保證 main / master 穩定性,大家還是至少要遵守branching 、pull (merge) request 、code review 、auto test 原則 。 github就最簡單的branching 、pull request 、code review 提出了它們的 github flow。 簡而言之,就是每個人在開發時,都先從 main 起一個新分支,不斷更新。待合適的時候,就透過 pull requst,向原項目負責人提出申請,只要項目負責人點頭,就可以把改動傳入 main 中。又因為Github 原本的定位在於個人與個人之間的協作,初時已經需要通過fork建立獨立的倉庫,那怕你不愛分支也必需分支。所以 pull request,code review 的作用更明顯,後逐的協作更理所當然。 但若果回到公司團隊協,Github flow 就應該像筆者之前提出協作方案,各自起分支,最後由某個人守門,把所有結果放到 main 中。(前文連結)

【如何用Trading View寫每天只交易一次的策略】

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2024-06-17

最記得以前有學員曾說過,他過去試過很多的交易策略,最後在實戰時的成績都不太好,然後「嬲嬲地」就每天只看到MACD的第一個訊號便入市,開市後見MACD的快線升穿慢線便買入,相反,若MACD的快線跌穿慢線便造淡,然後見MACD的快線繼續上升便平好倉,造淡時則見MACD的快線繼續下跌就平淡倉,就是這樣簡單! 但效果反而比很多複雜的策略更好。 這個只是他的意見,最後成績如何他沒有告訴我,但筆者自己研究過很多的Daytrade策略也都是每天只交易一次的,因為交易次數太多,交易成本就會增加,而且長時間交易會覺得更亂,特別是遇上連續虧損的時候,而每天只交易一次就是讓自己有足夠時間冷靜下來。 不過,若要用pine script寫這類每天只交易一次的策略,又應怎樣寫? 以下是一個很簡單運用Zero Lag MACD的交易策略,就是快線升穿慢線便買入,當買入後看到連續三支陰陽燭的時間內MACD的快線都在上升,那就平倉離場。 // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © markchunwaipaul //@version=5 strategy("zero lag MACD交易例子", margin_long=100, margin_short=100, initial_capital =1000,default_qty_type = strategy.percent_of_equity,default_qty_value = 100) SN=input(12) LP=input(26) M=input(9) ema1=ta.ema(close,SN) ema2=ta.ema(ema1,SN) ema3=ta.ema(close,LP) ema4=ta.ema(ema3,LP) ZerolagMACDLine=(2*ema1-ema2)-(2*ema3-ema4) ema5=ta.ema(ZerolagMACDLine,M) ema6=ta.ema(ema5,M) ZerolagSignalLine=2*ema5-ema6 Histogram=ZerolagMACDLine-ZerolagSignalLine var bool traded =false closeCond=ta.rising(ZerolagMACDLine,3) noposition=strategy.position_size==0 buyCond=ta.crossover(ZerolagMACDLine,ZerolagSignalLine) if buyCond and noposition strategy.entry("BUY",strategy.long) if closeCond and not noposition strategy.close("BUY") plot(ZerolagMACDLine,title="MACDLine",color=color.yellow ,linewidth=2) plot(ZerolagSignalLine,title="SignalLine",color=color.green,linewidth=2) plot(Histogram, color=color.black, style=plot.style_histogram,linewidth=2) 以上策略的Backtest report: 可以看到這樣寫每天的交易次數肯定不只一次,交易了1023次,獲利交易只有514次,勝率約50.24%,一年的虧損約37.45%。 另以下是同一個策略但每日只交易一次的寫法: // This Pine Script™ code is subject to the terms of the Mozilla Public License 2.0 at https://mozilla.org/MPL/2.0/ // © markchunwaipaul //@version=5 strategy("用zero lag MACD每日只交易一次例子", margin_long=100, margin_short=100, initial_capital =1000,default_qty_type = strategy.percent_of_equity,default_qty_value = 100) SN=input(12) LP=input(26) M=input(9) ema1=ta.ema(close,SN) ema2=ta.ema(ema1,SN) ema3=ta.ema(close,LP) ema4=ta.ema(ema3,LP) ZerolagMACDLine=(2*ema1-ema2)-(2*ema3-ema4) ema5=ta.ema(ZerolagMACDLine,M) ema6=ta.ema(ema5,M) ZerolagSignalLine=2*ema5-ema6 Histogram=ZerolagMACDLine-ZerolagSignalLine var bool traded =false closeCond=ta.rising(ZerolagMACDLine,3) noposition=strategy.position_size==0 buyCond=ta.crossover(ZerolagMACDLine,ZerolagSignalLine) if buyCond and not traded and noposition strategy.entry("BUY",strategy.long) traded:=true if closeCond and not noposition strategy.close("BUY") if ta.change(time("D"))!=0 traded:=false plot(ZerolagMACDLine,title="MACDLine",color=color.yellow ,linewidth=2) plot(ZerolagSignalLine,title="SignalLine",color=color.green,linewidth=2) plot(Histogram, color=color.black, style=plot.style_histogram,linewidth=2) 留意克體的部份就是加上後令策略變成「每天只交易一次」。 先設定traded為false,然後當買入後便設定為true,由於入市條件加上了not traded,代表要traded 必需為false時才會入市,這樣交易一次後就不會再交易,最後加上ta.change(time("D"))!=0,代表要轉為第二個交易日,traded才會再轉變為false,然後第二日當ZerolagMACD的快線升穿慢線時就會符合入市條件。 策略的backtest report: 同一樣的交易策略,只是將其改變為「每天只交易一次」,可以看到結果也是虧損,不過,虧損幅度卻由37.45%大幅下降至10.75%。另外要留意,筆者寫這兩個策略是沒有計算「佣金」及「滑價」的,而第一個策略在一年裏交易了1023次,但加上「每天只交易一次」這個條件後,一年裏只交易了258次,交易成本會相差很遠,不過勝率就未見有大幅改善,獲利的次數只有132次,勝率只輕微由50.24%提高至51.16%。 交易策略當然不可能這樣簡單,但只要將以上兩個策略作比較便可看到,每天只交易一次的Daytrade策略確實能提高成效。 網頁: www.quants.hk Youtube: https://www.youtube.com/@markchunwai Facebook專頁: https://www.facebook.com/quantshk/ Patreon: https://www.patreon.com/quantshk

2024年6月17日-6月23日

玄學星相
熊神進・2024-06-16

一周生肖運程預測 鼠:今個星期可以主動求變的話,運勢也不會太過差;例如現在做的工作不是太好,與其留守原有的工作等老闆裁員,倒不如自己主動找新的,合適自己的工作更實際;又或者留守在原位也好,可以想想怎樣改變自己的工作方式去配合公司的理念,這些都是可以增旺自己運勢的方法。提防關節毛病,有舊患或有運動習慣者應加倍小心。 牛:本周异性緣分也很旺,己婚的人士要特外注意不要引火燒身,單身的人士這個星期有美好姻緣。人際關係方面因爲有异性緣份的幫助,也會提高人際方面運氣,從而能得到別人更多支持。財運方面,合作旺財,適宜合作,容易因合作而帶來財富,今個星期適宜穿著紅色衣服, 而厨房最宜擺放一套「銀筷子」。 虎:運勢頗佳,只要努力付出,專心工作,定然會得到良好的回報。工作運極佳,能善用所學的知識在工作業務上,令你對工作更有歸屬感,對自己更有信心。財運來源主要是正財,多勞多得。切戒酒色、留意泌尿系統健康,暫勿吊喪,不進動工、動土、搬遷、裝潢則能趨吉避凶。吉利方位:西南方、正東方、西北方。 兔:財運今個星期一般,容易有大破財情况出現,自己一定要多加留意;所以本周切忌投資,尤其投機更加不可。人緣和桃花運旺盛,容易出現合作機會,能够得到團隊的力量,易得貴人之助,對于職場人士,則能得到同事的幫助,能够獲得大家的支持,比較有利于人際關係。建議在包包裏擺放一個桃木桶。 龍:犯太歲的負能量比較多, 今個星期投資要加倍小心,其實最好不要炒股票;工作方面也容易遇到阻滯;是非要特別留意,尤其在工作上,容易遭到小人影響自己工作。這個星期在消費方面要理智,儘量以守財爲主,才能更好的應對生活中因意外灾害造成的破財。要注意保重身體。小心因爲感情問題惹禍上身。 蛇:合作關係不是太良好,你們二人過去的行爲是心照不宣。愛情是濃淡皆宜。財運方面還沒到收穫的時候,趕緊努力種你的「莊稼」。 運勢不甚理想,打工人士工作運氣較爲低迷,宜守不宜攻,應防範小人的陷害,或受黴運牽連,凡事均須三思而後行,健康方面這個星期也非常差,自己或家人之健康狀况均堪憂,須防有不測之灾。 馬:一年過了5個月, 來到6月, 這不是一個好運的月, 馬受到白虎星即將浮現的景象, 情緒變化很大, 基本上來說。需要注意的是,要妥善處理好與親戚朋友之間的關係,以免引發家族矛盾。風水助運物:金剛橛。單身男只能遇上性格剛烈的女性,對方未必是自己的心儀對象。晚上如果有空,請做一次燒供。 羊:在事業運勢中會有貴人相助,以及合夥做生意,或者是朋友幫助自身的運勢,事業會有所提升;經商中爲朋友相助,以及上級提拔。感情運方面,本周算是平穏,但未有對象者今星期則不容易突破,必然要自己多加努力;已有固定對象者則感情穏定。本周提妨生肖:龍、蛇。 猴:「喪門」星入宮,預防家人親友病厄隱患(身體狀况),注意心臟血液循環、筋骨關節隱患,不利探病,暫勿吊喪、行喪、送喪、戒爭鬥。2004年出生的生肖猴尤其需要在本周裏注意各項投資事宜的進展,偏財運不佳的日子裏還是需要保守理財,避免破財敗財的局面出現。不利的生肖:鶏、龍、鼠。 鶏:本周一些工作將會占據你很多時間和心力,你要能够掌握效率,冷靜地去處理,否則只會令已有的計劃拖延。健康上尤其需要注意出行安全,意外事故頻繁的日子裏還是需要謹慎對待每個細節。感情方面,不妨和愛侶到外地旅行,有助感情的增進。同時還要小心凶星,應該提高安全防範意識,以免健康受到影響。 狗:工作上易遭遇瓶頸,也要注意小人陷害,但却也不乏升遷的機會,凡事以和爲貴,自然可以减少無端是非。「劫煞」表示你們在這星期會遇到一些小波折,即使沒有什麽太大的問題但是也會影響你們的心情,讓你們變得暴躁,你們可以嘗試去參加一些修身養性的活動。本周可以去寺廟拜拜,增加正能量。 猪:上星期跟男友有點誤會, 大家冷戰了一段日子, 其實大家都是挂念對方, 只因二人都已婚, 大家都不敢向前走半步。財氣上都會是比較不錯的財氣聚集運勢,但是此財氣會有瓜分之意。也就是說,別人掙得錢財會分給你自身一些,或者是你自身掙到財氣,會分給別人一些,此爲瓜分氣場。今個星期適宜隨身携帶一套「開光古五帝錢」,能够化解凶煞。

【如何用Trading View寫運用多重timeframe的策略】

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2024-06-14

Pinescript的功能其實十分之多,可以寫到不同的指標之餘,甚至可以將一些統計學的概念應用在交易策略之上。 例如我們在facebook介紹的Predicted_price MACD是將Linear Regression 的計算融入MACD中,相信大家現在應不難明白。 https://www.facebook.com/quantshk/posts/pfbid036K93ZaK4LnbZPxrekZUMKSpWcFcbjBLhE122G6h8H3qcUTzoVJ7yX2U1nffCPV1Tl 影片中有兩個例子,分別是看SQQQ及Apple的5分鐘圖,你會發現指標的入市訊號比傳統的MACD更準確,甚至你會看到MACD根本就是顯示市況向好,但Predicted_price MACD卻顯示造淡訊號。事實上,Linear Regression確實很有用,只要與價格有線性關係的數據都可以作分析,會對股價的變化有預測作用。除了Predicted_price MACD,其他我們研發的與Linear Regression相關的交易策略都會陸續介紹給大家。 這篇文章的的題目是如何用Trading View寫運用多種timeframe的策略,這也是最多人會問的問題之一,因為很多人都會喜歡多種時間間隔的策略,例如同時運用5分鐘圖及1分鐘圖表,又或同時用小時圖與5分圖表等。 要寫這樣策略就要用上request.security這個function,用法例如子如下: [macdLine,signalLine,_]=ta.macd(close,12,26,9) signal5min=request.security(syminfo.tickerid,"5",signalLine) macdhourly=request.security(syminfo.tickerid,"60",macdLine) request.security的( ) 內要寫上的有三個部份,包括「要取那一個symbol的資料」、「要什麼時間間隔」、「要取那一個數據」。 「要取那一個symbol的資料」的部份若填上syminfo.tickerid就是要取目前你在Trading View畫面上顯示的數據,例如你圖表上是在看Apple(US:AAPL),若填上syminfo.tickerid就會最Apple(US:AAPL)的數據。 但大家可能會覺得奇怪,為什麼要多填一次,本身不就是想要Apple不同時間間隔的數據嗎? 因為request.security除了可以拿取不同時間間隔圖表的數據外,也可以拿取不同symbol的數據,例如你想看蔚來(US:NIO)的走勢來炒Tesla(US:TSLA),你在這個部份便不能再寫上syminfo.tickerid,你要在主圖上開啟Tesla的圖表,然後在request.security的( )填上蔚來的symbol,那就可以寫到看蔚來的數據炒Tesla的策略。 而「要什麼時間間隔」就很簡單是要取什麼時間間隔的數據,若只寫數字就是代表多少分鐘,例如"5"就代表5分鐘,"60"就代表60分鐘,"D"則代表日線圖的數據,"W"則代表周線圖的數據。 例如你本身的策略是運用1分鐘圖表的,就在主圖表上開啟1分鐘圖,然後加上這句: dailyhigh=request.security(syminfo.tickerid,"D",high[1]) 就可以拿到上一個交易日裏日線圖的最高價,dailyhigh是自已給的名稱,方便大家在計算時再使用。例如你再寫dailyhigh> dailyhigh[1]就代表你的策略中要求上一個交易日的最高價比再上一日的最高價更高。 留意,本身daiyhigh這個數據要自行設定是要取「上一個交易日」的最高價,若在這個名稱再加上[1],便是由上一個交易日開始再倒數一個交易日。 最後是request.security的( ) 內「要取那一個數據」的部份,這部份不一定只能使用最高價、最低價、開市價、收市價等的數據的,也可以是不同指標的數據,甚至是你自行經過計算的答案。 假設你在主圖表上開啟一個1分鐘圖表,你的策略也包括了MACD的運用,先用[macdLine,signalLine,_]=ta.macd(close,12,26,9) 定義了MACD的快線及慢線為macdLine及signalLine。 signal5min=request.security(syminfo.tickerid,"5",signalLine) macdhourly=request.security(syminfo.tickerid,"60",macdLine) 然後我們把5分鐘MACD慢線的數據及小時圖MACD快線的數據命名為signal5min及macdhourly,然後用上request.security,在( )內分別填上signalLine及macdLine便可以。 再加上plot便可以把5分鐘MACD慢線的數據畫出來,然後加一個1分的MACD便能將兩者作比較。 25 另外,筆者發現很多新手都比較抗拒使用plot這個功能,大家都會只集中去留意backtest的結果,而且有了backtest的結果後圖表上根本便有入市訊號的位置,那大家自然會想,若不是要寫一個自己的技術指標,那plot這個功能實沒多大用處。 但筆者的習慣是,每次寫自己的交易策略時,每寫一部份都會先用plot來看看寫出來的是否真的是自己想要的,因為用程式語言去寫交易策略,與大家用目測是完全不同的,很多時候用程式寫出來的未必就是你想要的。你的交易策略可以很複雜,到你寫好後再做backtest,才發現根本不是你想要的,那再重寫就反而會更麻煩。 我們網頁: www.quants.hk Youtube: https://www.youtube.com/@markchunwai Facebook專頁: https://www.facebook.com/quantshk/ Patreon: https://www.patreon.com/quantshk

【如何用Trading View 運用不同技術指標寫交易策略】

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2024-06-13

教授pine script 時最多新手問的就是一些主要的技術指標如何去寫,當你最初練習pine script時就先用一些常用的技術指標來試試寫策略,到熟習後,即使一些未見過的技術指標,只要你在google找到指標的公式,也能自行寫出來。 例如,MACD是內置的指標,第一步是記得trading view的內置指標是要加上「ta.」的,寫法如下: [macdLine,signalLine,_]=ta.macd(close,12,26,9) 再要把MACD的快線在圖表上顯示,就用plot這個功能,寫法如下: plot(macdLine,title="MACDLINE",color=color.red,linewidth=1) 不過,有些指標可能並非內置的,又或即使是內置,但你習慣了自行寫出來,假設大家不懂得什麼是bollinger’s band,然後在網上找到它的公式就是通道的頂部是20日平均線加上兩個標準差,而底部是20日平均線減去兩個準差,那我們就可以自己寫出來。 例如平均線是SMA,要寫出來就要加上「ta.」,先想一個名稱給你每個要計算的答案,什麼名稱都可以,但名稱不可以用數字開頭。例如你想叫平均線的名稱做SMA20,就用以下的寫法: sma20=ta.sma(close,20) 然後又給標準差一個名稱,假設你叫它為ST,那寫法如下: st=ta.stdev(close,20) 然後再分別給多通道的頂部及底部名稱,假設叫做upper及lower upper = sma20+ 2*st lower = sma20 – 2*st 寫法就是這樣簡單,然後upper及lower就可以用作其他計算的部份,例如你的入市策略是最高價升穿bollinger’s band 達5%,那寫法如下: 先給你的入市條件一個名稱,假設名為buyCondition,也給upper高5%的情況一個名稱,假設是upperhigh uppperhigh=upper*1.05 buyCondition=ta.crossover(high,upperhigh) 此外,其他我們常見的技術指標如RSI, ATR等也是內置的,寫法同樣是先給它們一個名稱,例如你想叫它們做rs及atrValue,寫法如下: rs=ta.rsi(close,14) atrValue=atr(14) 其他有些主要常用的技術指標也要自行計算的,如Stochastic,寫法如下: //@version=5 indicator("stochastic") stcLength=input(14) periodK=input(3) periodD=input(3) fastSTC=ta.stoch(close,high,low,stcLength) slowK=ta.sma(fastSTC,periodK) slowD=ta.sma(slowK,periodD) plot(slowK,title="slowK",color=color.red,linewidth=1) plot(slowD,title="slowD",color=color.blue,linewidth=1) 我們再試試寫Rate of change這個指標,先在網上找到它的公式如下: 然後大家可自行先用Trading View 先試試寫出來才看答案,若沒有寫錯,那寫指標這部份的學習便沒有問題了。 Rate of change寫法答案: length = input.int(9) source = input(close) roc_smooth = input(5) roc = ta.sma((100 * (source - source[length])/source[length]),roc_smooth) 最後我們看看super Trend這個指標的寫法,有些時候我們希望指標的參數是可以寫好後直接在圖表上更改的,又或有幾個指標的參數也是一樣的,我們會重覆使用,那就先給參數一個名稱,例如叫做length,可以參考以下superTrend這個指標的寫法: //@version=5 indicator("SuperTrend", overlay=true) length = (10) multiplier = (3) atr = ta.atr(1) basis = ta.highest(high, length) + ta.lowest(low, length) basis := basis / 2 upperBand = basis + (multiplier * atr) lowerBand = basis - (multiplier * atr) trendUp = close > upperBand[1] ? true : close[1] > upperBand[1] ? true : false trendDown = close < lowerBand[1] ? true : close[1] < lowerBand[1] ? true : false plot(trendUp ? upperBand : lowerBand, color=color.blue, linewidth=2, title="SuperTrend") 這裏用了「? :」這種寫法,?前是條件,?後是若符合條件要怎樣,而:後則是若不符合條件要怎樣,若大家看其他Tradind View用家寫的策略,這是十分常見的寫法。 trendDown = close < lowerBand[1] ? true : close[1] < lowerBand[1] ? true : false 這個的意思就是trendDown是名稱,然後看看收市價是否小於上一支陰陽燭的supertrend的底部,若符合條件就是true,否則就再看看上一支陰陽燭的收市價是否低於上一支陰陽燭的supertrend的底部,若符合條件,也是true,但兩個條件也不符合就是false。 我們網頁: www.quants.hk Youtube: https://www.youtube.com/@markchunwai Facebook專頁: https://www.facebook.com/quantshk/ Patreon: https://www.patreon.com/quantshk

【新手學習用pine script 寫運用MACD的交易策略】

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2024-06-13

學了pine script的基本格式後,大家便可以試試寫一些簡單的策略做backtest。例如以下的例子: //@version=5 strategy("MACD Strategy", overlay=true) fastLength = input(12) slowlength = input(26) MACDLength = input(9) MACD = ta.ema(close, fastLength) - ta.ema(close, slowlength) aMACD = ta.ema(MACD, MACDLength) delta = MACD - aMACD if (ta.crossover(delta, 0)) strategy.entry("MacdLE", strategy.long, comment="MacdLE") if (ta.crossunder(delta, 0)) strategy.entry("MacdSE", strategy.short, comment="MacdSE") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) 15 大部份的策略都涉及使用技術指標,那就要每個指標的參數都設定一個變數,例如macd的參數是12, 26,9,那三個數字都要設定為變數,這樣做是為了日後使用可以隨時更改。 在Trading View中寫很多的指標都是以ta. 為開始的,例如你要寫普通的平均線就是ta.sma( ) ,若要寫EMA 指數平滑移動平均線就要寫ta.ema( ) 而( ) 內需要有兩個數值,第一個是用什麼來計算,例如你想用收市價、最高價、最低價,還是成交量等等。而另一個數值就是長度。假設你要計算一條用成交量來計算的10日平均線,那寫法就是ta.sma(成交量, 10)。甚至你要計10日內的RSI平均值也可以,寫法就是ta.sma(rsi數值, 10)。 以上的策略可以看到,原創者所謂的MACD、aMACD及Delta是他自行去設定計算方式的。 首先他計MACD的方法是MACD = ta.ema(close, fastLength) - ta.ema(close, slowlength) fastLength在最初已設定為12,那ta.ema(close,fastLength)就是計算以收市價計,12日的EMA。而slowlength最初也設定為26,那就是計算以收市價計,16日的EMA,然後前者減去後者就是原創者所指的MACD。 而aMACD = ta.ema(MACD, MACDLength)代表了,首先我們計算出MACD的答案,再用這個答案來計算平均數,而MACDLength最初已設定為9,那就是代表了aMACD是以MACD的值來計算9日的EMA。 這樣就有了MACD及aMACD的數值,將MACD – aMACD就會得到delta的答案。 即使是完全新手應該也覺得十分容易吧? 再來我們要學一些基本的,在Trading View中我們要寫「升穿」或「跌穿」就是ta.crossover ( ) 以及ta.crossunder( )。 而( ) 之內在ta.crossover代表前面的值升穿後面的值,若在ta.crossunder則代表前面的值跌穿後面的值。例如ta.crossover( A, B) 就代表A升穿B,若是ta.crossunder(A,B)就代表A跌穿B。 然後我們再看以下幾句: if (ta.crossover(delta, 0)) strategy.entry("MacdLE", strategy.long, comment="MacdLE") if (ta.crossunder(delta, 0)) strategy.entry("MacdSE", strategy.short, comment="MacdSE") //plot(strategy.equity, title="equity", color=color.red, linewidth=2, style=plot.style_areabr) 在Trading View中寫交易策略,請記得是必需要有strategy.entry( ) ,這代表要告訴Trading View要入市的時刻。而( ) 內要寫的就一般有三個部份,第一個部份是名稱,要寫成"MacdLE",這個名稱很重要,若你的策略有分注平倉,要讓Trading View知道你要將那一個已入市的倉位平倉,寫平倉時要列明這個名稱的。 寫了名稱後就是要告訴Trading View你是造好還是造淡,造好的寫法是strategy.long,造淡的寫法是strategy.short,其實有了名稱及已表明是造好還是造淡後已足夠,但有些用家想在圖表上標示一些註解,那就用comment=,以上的策略就是想在圖表上看到MacdLE及MacdSE,他才會加上comment。 而最基本寫策略就是 if ………………. 然後strategy.entry( ………) 以上的策略就是Delta由零以下升至零以上就買入,Delta由零以上跌至零以下就造淡。 這樣整個簡單的策略便寫完,但若你想在圖表上畫上一些線標示買入及賣出的訊號。那便加上plot (……………………) Plot的最基本用法是( ) 內加上: 要畫那一個數值, 名稱, 顏色, 線的寬度, 線的形狀。 以上的策略就是要畫strategy.equity代表資金的變化,然後給予名稱時要用title= “ “ ,之後是顏色,寫法是color=color.什麼顏色,例如color=color.blue,之後是線的寬度及形狀。plot.style_area代表將線條繪製成區域圖形,這個功能在version 4或以上版本才有的。 另大家要留意在pine script 中加上// 大多是註解,加了//後即使你寫一些中文也不會有影響的,不會令策略有變化。原創者在寫plot 時加了// 代表這句只是給大家參考,若把// 冊除才會有plot的功能出現。 即使大家是Trading View的全新手也會覺得十分簡單吧! 筆者會定期將一些在社群中看到的例子解釋給大家看,透過這個過程去學習,即使是全新手應也不會覺得太困難。 我們網頁: www.quants.hk Youtube: https://www.youtube.com/@markchunwai Facebook專頁: https://www.facebook.com/quantshk/ Patreon: https://www.patreon.com/quantshk

Coding Anywhere 工作方案

科技新知
MacauYeah・2024-06-13

最近筆者一直在準備軟件開發的教材,因為各種原因,例如:新舊硬件交替,沒有固定的電腦等等,讓寫稿和設計教程的進行得很慢。但其實這種情況並不旱見,即便是真正的開發團隊,也會時時刻刻面對各種新舊設備的更換。在不久的未來,這種更替速度可能更頻繁,工作模式也很可能趨向這樣,為了打造更靈活的工作方案,適筆者一直為自己的coding anywhere情境物色合適的工具。 基本假設 在分享之前,有些前題條件必需要滿足,coding anywhere的基本條件是我們可以把一些厚重的資源變成cloud或遠端工作,如果你是開發主機遊戲,你的測試必需要在PS5上跑,那就沒有條件帶著裝備走。即使你可以設定遠端連線,但你人在外,其實沒法在PS5上做互動。真正有條件實行的工作,必需要可以在外由開發至測試都行得動。 在這個前題下,筆者就開始分享一些自己嘗試過不同組合。 不可或缺的東西 - 滑鼠、網絡 這件事,看似不重要,但筆者一直沒法找到完美的解決方案。 無線滑鼠是標準配置,筆者曾經想去掉滑鼠,但不太可行。這個大家還是選一個不太大,而且可以穩定在不同機器切換的滑鼠吧。至於鍵盤,視乎你的主機有沒有實體鍵盤,如果最後選擇平板或掌機的話,還是需要帶鍵盤外出,亦即是不論你選擇何種方案,鍵盤的重量也是不會消失的。 另一個就是網絡流量問題。我們處身的環境,並不一定有免費網絡。有時為了安全性,我們不想配對公用Wifi。那怕不考慮安全問題,公用Wifi都很常出現因為人流太多而被踢的情況,所以一般都考慮直接使用手機的4G/5G網絡。而為了節省流量,一般控制好大檔案/大更新的下載時機,都是可以達到的。 不同的工作模式,不同的選擇 上述第一個問題在筆者看來,都屬於沒有選擇,但下面的選擇,可以基於價錢、功能、需要而搭配。另外,我們還要假設我們有足夠的Remote資源可以用。但如果大家的開發,必需要帶著硬件資源,就不太可能實現coding anywhere。 一台入門級的Notebook 如果我們大部份工作,都可以經Cloud Service解決的話,其實我們不必投資太多在主機之上。Notebook帶著四處跑,壞的可能性也多,入門級的Notebook就算壞了也沒有那麼心痛。 全Cloud Service還有另外一個好處是不需要擔心備份問題,壞了Notebook就狠心換機。而且Cloud Service的好處是需要更新client software的網絡流量消費不高,不過想真省錢的話,就需要好好控制cloud service。 例子1,如果大家熟識或願意使用github codespace或gitpod等全cloud IDE,Notebook只需要安全Browser就夠。所有IDE, VM都由github或gitpod提供,它們各自有各自的免費用量,也就是說,當大家真的不夠用又不想付費,可以兩著切換用。真的不夠用,就時租codespace 2G 每小時$0.18USD,約為每小時1.44MOP。 例子2,如果大家有自己Cloud VM,可以用VS Code + SSH,除SSH的extension外,其他安裝及運行在VM中,對Notebook client的要求不高。Cloud VM品牌可以使用Digital Ocean、Linode等,2G機器價錢更低,每小時0.018USD左右,不過就要自己初始化各種工具。 一台高階的Notebook 這個方案可能就不需要再多解釋了,那就是你把家裏的核心電腦帶著到處走,一切都自給自足。在外的不可控因素可能就只有電量控制。另外一方面,長期的備份和維修成本也是需要考慮的。 輕便裝:一台中階大平板 跟上面的遊戲用PC掌機類似,不過螢幕更大,但缺點是配上鍵盤後,價錢比得上一台中階電腦,出門的重量也比得上電腦。在軟件上,你還必需要選擇Cloud VM,Local IDE也不一定有。所以在成本上來講,沒有很太優勢。大平板可能只對那些有專門APP需求的用戶有意義。 究極輕便裝,一台7/10寸入門平板 大平板最大的問題是價錢,但如果換成小平板,一切就不錯了,壞了也沒有那麼心痛。源用所有純Cloud解決方案。出門的負重最低,電量也最有保證。這是筆者最推薦的方案。 低成本高階機:遊戲用PC掌機 對,你沒有看錯,筆者指的是主打遊戲的PC掌機,也是筆者現時自己的最佳方案。假如你在工作室、家、公眾環境來回切換,很擔心傷到Notebook的話,那麼買台低成本的PC掌機絕對是可以接受。有些很重要的底層功能,需要多台Cloud VM,可能花費很高,所以還是需要經Local實現比較有性價比。 它最重主要的問題是螢幕小和沒有鍵盤,但這個程度,對比入門平板來講,其實都差不多。但它比平板有更強的CPU、RAM,作為移動核心電腦一定沒有錯。你還可以自由選擇Local VM、Cloud起VM。

【新手學pine script語法必需懂的格式】

創富坊
程式交易 www.quants.hk (導師: 財經書藉作家: 麥振威)・2024-06-11

有關Trading View的pine script ,其實Multicharts 的power language有點相似,若你是完全新手,可能早兩天的例子仍有些不明白,那今天筆者告訴大家一個寫策略的最基本「格式」,最初便跟著這個格式去寫,到習慣了就會很容易上手。看完這篇應該大家都理解pine script的基本寫法吧! 「 //@version=5 strategy("My strategy", overlay=true, margin_long=100, margin_short=100) 第一步驟: 設定變數 設定變數 例如: rsi_Length=input(9) 第二步驟: 計算過程(包括技術指標的計算) 例如: rs=ta.rsi(close,rsi_Length) 第三步驟: 設定入市條件 例如: LongCondition= rs<=30 and rs>10 ShortCondition=rs>=70 and rs<90 第四步驟 設定入市及離場準則 」 可以想像成你想寫英文書信一樣,也會有一定的「格式」要求,要這樣寫Trading View才會明白你想表達什麼。 //@version=5 strategy("My strategy", overlay=true, margin_long=100, margin_short=100) 而以上兩句是一定要有的,version5代表了要告訴Trading View你用的pine script版本,若沒有寫策略就會不能compile,用不到的。 至於strategy 就是告訴Trading View你要寫的是交易策略,Trading View常用的有兩種格式,一種是寫交易策略就是要寫明是strategy,另一種是寫指標,就是沒有入市訊號,只是想自己設計一個技術指標在圖表上觀看,那便要用上indicatior的字眼。 如以下的寫法便是寫指標的最開頭部份: //@version=5 indicator("My script") 另外,寫strategy時大家見到overlay=true, margin_long=100, margin_short=100,因為大家寫好策略後,策略中可能包括了把某些指標顯示在圖表上的,overlay=true就代表你想這些指標顯示在「主圖」上,若想在走勢圖之下顯示,那就寫成overlay=false。 而margin_long=100, margin_short=100 是設定長、短倉的入市比例,有時候大家也會看到有些炒家會在這部份加上以下部份,是因為要為backtest做一些設定。在amibroker或multicharts我們會有另外一個頁面做設定的,但Trading View就直接在這裏寫出來便可以。 commission_type=strategy.commission.percent, 這代表用百份比來計算佣金 commission_value=0.2, 佣金百份比是0.2% initial_capital=10000 最初的本金為10000元 slippage= 1, 滑格設定為1個最小價格變動 currency=currency.USD 設定用美元來做backstest的單位 例如你想寫以下的策略: RSI(9)跌至30以下但高於10便造好 RSI(9)跌至10或升至高於50便平好倉 RSI(9)升至70以上但低於90便造淡 RSI(9)升至90或跌至低於50便不淡倉 這個策略十分簡單,第一個步驟是要看看有那些是有「數字」的,這些數字由於我們想將來可以更容易更改,所以要先將其設定為變數。其實所有技術指標的參數都會是變數,而這個策略中,RSI便需要先設定一個變數。 大家在網上找例子會看到很多設定變數的寫法,如看到 var int , var float 等,這些筆者之後再講解,最先大家可以先記著這個準則,你先給變數一個名字,然後寫 = input(數字)。 以上的例子筆者給RSI的變數名字為rsi_Length,那寫法就是: rsi_Length=input(9) 然後第二個步驟是計算過程,某些指標如Zero Lag MACD並沒有內置function的,那就要自己「加減乘除」去計,有些指標是有內置function的,例如RSI便可直接寫。 所有寫技術指標的方法都要先加「ta.」在開頭,例如RSI,便是 ta.rsi(列明用那一種數據去計算, 計算的長度) 如ta.rsi(close, rsi_Length) 就是用收市價去計算,計算日子長度是9日,因為我們在設定參數,已將rsi_Length設定為9。另外你也可以試試用最高價、最低價,成交量,甚至其他技術指標的數值去計算,在Trading View的社群便有些炒家愛計算MACD快線的RSI,寫法就是先計算MACD快線的值,再用以下寫法: ta.rsi(MACD快線值, rsi_Length) 最後我們給這個rsi一個名稱,方便寫策略之後的部份可以使用,例如筆者給它名稱為rs 寫法就是: rs=ta.rsi(close,rsi_Length) 然後第三個步驟就是設定入市條件,最初大家可以用以下的寫法會較簡單: 先給四個名稱,包括longCondition , shortCondition, longCloseCondition, shortCloseCondition 我們的入市條件是這樣: RSI(9)跌至30以下但高於10便造好 RSI(9)跌至10或升至高於50便平好倉 RSI(9)升至70以上但低於90便造淡 RSI(9)升至90或跌至低於50便不淡倉 LongCondition= rs<=30 and rs>10 ShortCondition=rs>=70 and rs<90 LongCloseCondition=rs<=10 or rs>50 ShortCloseCondition=rs>=90 or rs<50 這些過程中會經常用了 「> 」、「<」、「>= 」、「<=」這些符號,代表了大於、小於、大於或等於、小於或等於。也會用很多and 及or 把策略組織起來。另「!=」代表不等如 最後是第四個步驟: 第四個步驟你需要用上「if….」、strategy.entry 及strategy.close strategy.entry的寫法,造好及造淡是不同的, 造好: strategy.entry(“名稱”, strategy.long) 造淡: strategy.entry(“名稱”, strategy.short) 而strategy.close 在之後的括弧( ) 內要加上好倉或淡倉的名稱,這才能對應到是要平好倉還是要平淡倉。 寫法如下: if LongCondition strategy.entry(“BUY”,strategy.long) if LongCloseCondition strategy.close(“BUY”) 這例子中”BUY”是我給好倉的名稱,在strategy.entry中給予名稱,並要用上” “ 這個符號,然後在strategy.close也把名稱再寫一次。 再寫平淡倉的部份如下: if ShortCondition strategy.entry(“SHORT”,strategy.long) if ShortCloseCondition strategy.close(“SHORT”) 另大家看其他炒家寫的例子,平倉還可以用strategy.exit、strategy.close_all() 等等的,這些之後筆者再逐一講解。 以下是整個策略完整的寫法: //@version=5 strategy("My strategy", overlay=true, margin_long=100, margin_short=100) rsi_Length=input(9) rs=ta.rsi(close,rsi_Length) LongCondition= rs<=30 and rs>10 ShortCondition=rs>=70 and rs<90 LongCloseCondition=rs<=10 or rs>50 ShortCloseCondition=rs>=90 or rs<50 if LongCondition strategy.entry(“BUY”,strategy.long) if LongCloseCondition strategy.close(“BUY”) if ShortCondition strategy.entry(“SHORT”,strategy.long) if ShortCloseCondition strategy.close(“SHORT”) 不過,大家若將文章中的寫法直接copy到Trading View的pine editor中又會看到顯示有錯誤的,當大家在pine editor寫策略時,看到有「紅色」的部份就是有錯了。 一般來說會有幾點是常會出錯的: 1) “ “ 的格式與Trading View的要求不對,把它再打一次便可以 2) if , strategy 等要全部細楷的,有時在文章中若寫了If也就會有不同 3) if 之後再寫下一句要在第五個字完開始,把句子移右一點便會變成正確,一般在寫完if的句子後按「enter」,trading view會自動告訴你下一句應該在那個位置開始寫的。 4) 自已給的名稱有大細楷分的,例如ShortCloseCondition,當中S, C, 都是大楷,當再寫時大細楷要完全一樣的。 這些都是最初常會遇到的問題,改正後便可以。若是完全新手,先記好這個「格式」,在Trading View上先寫幾次,應該不會感到太困難,有了基本概念後再慢慢學其他的寫法,累積經驗後便能逐步寫很多不同的策略。 我們網頁: www.quants.hk Youtube: https://www.youtube.com/@markchunwai Facebook專頁: https://www.facebook.com/quantshk/ Patreon: https://www.patreon.com/quantshk