2015年11月4日 星期三

避免相同資料 重複輸入(重複新增)


http://www.dotblogs.com.tw/mis2000lab/archive/2009/10/09/10980.aspx

'----自己寫的----
Imports System
Imports System.Web.Configuration
Imports System.Data
Imports System.Data.SqlClient
'----自己寫的----
    Protected Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim Conn As SqlConnection = New SqlConnection
        Conn.ConnectionString = WebConfigurationManager.ConnectionStrings("Web.Config檔案裡面 ConnectionString").ConnectionString
        Conn.Open() '---- 連結DB

        Dim dr As SqlDataReader = Nothing
        Dim cmd As SqlCommand
        cmd = New SqlCommand("select * from User資料表 where 帳號 = '" & Trim(TextBox2.Text) "'", Conn)

使用參數的寫法,可以避免一些攻擊:
cmd = New SqlCommand("select * from User資料表 where 帳號 = @id", Conn)
cmd.Parameters.AddWithValue("@id", TextBox2.Text)

        dr = cmd.ExecuteReader() '---- 執行SQL指令,取出資料
        '////////////////////////////////////////////////////////////////////////////////////////////////////////////////

        If dr.HasRows() Then

            Response.Write("Error~ 找到相同的帳號,所以程式停止!!")
            Response.End()
        Else '-- 沒有找到相同標題的文章,所以可以新增這筆資料 '-- 請自己撰寫資料新增的程式碼
            Response.Write("新增資料成功!!")
        End If

        If Not (dr Is Nothing) Then
            cmd.Cancel()
            dr.Close()
        End If
        '---- Close the connection when done with it.
        If (Conn.State = ConnectionState.Open) Then
            Conn.Close()
            Conn.Dispose()
        End If
    End Sub






2015年11月3日 星期二

如何產生隨機不重覆的數字

方法一
http://www.allenkuo.com/EBook5/view.aspx?TreeNodeID=72&id=1423

//static void Main(string[] args)
        {
        var hs = new HashSet();
        int counter = 1;
        int con = int.Parse(TextBox1.Text);
        //int con = 10;
        var rnd = new Random();
        while (hs.Count < con)
        {
           counter++;
                hs.Add(rnd.Next(con)+1);
            }

        //Console.WriteLine("一共取了" + counter + "亂數才完成");

        //Console.WriteLine("結果如下:");
        string sum = "";
            foreach (int item in hs){
              //Console.Write(item.ToString() + ", ");

                sum = sum + item.ToString() + ", ";
            }
            Label1.Text = sum;
            Label2.Text = "一共取了" + counter + "次亂數才完成";
        Console.WriteLine("");
        }

方法二
http://blog.yljh.mlc.edu.tw/blog/blog_form.asp?blog=paguma&view=writings&writing_id=301

Option Base 1
  /* Option Base 是指定陣列註標值開始的指令
  /* Option Base 1 表示陣列元素從 1 開始
  /* Option Base 後方只能接 0 或 1

Dim I, K, X, Temp, A(42) As Integer
  /*宣告所需使用到的變數及陣列
  /* A(42)包含的元素有 A(1)、A(2)....A(42) 

For K = 1 To 42
 A(K) = K
Next K

  /* 利用 For 迴圈將數值依序存入陣列
  /* 當 K = 1 時,A(1) = 1
  /* 當 K = 2 時,A(2) = 2
  /* ................. 
  /* 當 K = 42時,A(42) = 42

Randomize
  /* 使用Rnd函數時,務必在使用前加上 Randomize指令
  /*Randomize為啟動亂數種子,後方可加整數 -32768 ~ 32768
  /*功能是讓 Rnd()函數產生的亂數更不規則
  /*若沒有加上此指令時,每次執行產生的亂數將會固定

For I = 1 To 6
 X = Int(Rnd()*(42-I+1))+1
 Temp = A(X)
 A(X) = A(42-I+1)
 A(42-I+1) = Temp
Print A(42-I+1) & " ";
Next I

  /* For I = 1 To 6 代表要執行 6 次動作
  /* X 是代表每次隨機選取的值,原來應是 X=INT(Rnd()*42)+1
  /* 因為每次選取的範圍要遞減
  /* 第1次1~42選1個,第2次1~41個選1個,第3次...
  /* 也就是第1次為 Rnd*42,第2次為 Rnd*41,第3次...
  /* 我們利用 I 值每回合都會加 1 的特性加到程式碼
  /* Rnd()*42 調整為 Rnd()*(42-I+1)
  /* 重覆6次,每次 X 值取亂數的範圍都會少1
  /*
  /* 再來是將隨機選取的位置與最後位置的數值做交換
  /* 每個回合最後的位置並不是固定在 A(42)
  /* 第1次為 A(42),第2次為 A(41),第3次...
  /* 每回合最後的位置配合 I 值調整為 A(42-I+1)
  /* 底下為將數值互換的程式
  /* Temp=A(X) : A(X)=A(42-I+1) : A(42-I+1)=Temp
  /*
  /* 最後是每個回合都將取得的數值印出
  /* 因為是放在每回合最後的位置,因此是 Print A(42-I+1)

C# Int String 轉換



String轉換1. ToString()方法   2.System.Convert.ToString()

int轉換1. int.Parse(xxxxxxxxxxxxxx)    2.System.Convert.ToIntXX()

https://msdn.microsoft.com/zh-tw/library/bb397679.aspx
http://kuomingwang.blogspot.tw/2009/03/c-int-string.html



TextBox限制只能輸入數字
http://adamagod.blogspot.tw/2012/10/c-net-textbox.html

在前端加入Script如下

然後再後端把想要限制的TextBox在他的Attribute加入一個OnKeyPress的事件會去呼叫上面的javascript即可!

txtOnlyNumber.Attributes.Add("OnKeyPress", "txtKeyNumber();");



2015年10月21日 星期三

5款讓人目不轉睛的磁浮家電




5款讓人目不轉睛的磁浮家電5款讓人目不轉睛的磁浮家電

5款讓人目不轉睛的磁浮家電5款讓人目不轉睛的磁浮家電

5款讓人目不轉睛的磁浮家電5款讓人目不轉睛的磁浮家電

5款讓人目不轉睛的磁浮家電5款讓人目不轉睛的磁浮家電

5款讓人目不轉睛的磁浮家電5款讓人目不轉睛的磁浮家電

2015年10月17日 星期六

蕭明道-DMI;廖繼弘--三線一心;董鍾祥--季線乖離;朱家泓--雙線操盤;陳威良--三點進擊

蕭明道-DMI;廖繼弘--三線一心;董鍾祥--季線乖離;朱家泓--雙線操盤;陳威良--三點進擊


緊追買賣訊號 達人親授5招獲利絕技名家教戰》

撰文 / 歐陽善玲、林心怡
出處 / 今周刊   896期



如何利用技術線形選股,精準抓出個股波段起漲點、多空轉折點,加碼及賣出時機,大賺數倍獲利?《今周刊》專訪五位技術線形達人,透過他們多年看盤心得分享,給投資人最簡單、實用的一招。
專業投資人 蕭明道
掌握四大要素 發掘攻擊訊號

靠技術指標選股,常會遇到一些盲點。比方說,當個股上漲時,一般人很難認定那是多頭的回升波,還是整理過程中的小幅波動,抑或是空頭的反彈波。當無法確定行情有多大,能走多久時,投資人自然也不知道該投入多少資金進場布局。

要突破這個瓶頸,只要利用DMI(趨向指標),就能解決。DMI指標,是由四條線所構成,分別是正DI、負DI、ADX及ADXR。

以尋找個股買點為例,當正DI值突破負DI值時,顯示多方力道增強,可視為買進訊號;將符合這個標準的個股,先納入口袋名單後,再觀察ADX的表現。一旦ADX由下往上翻揚,就要注意,多頭已吹起反攻號角,一個攻擊波已然成形。

找出攻擊訊號後,想要了解未來空間有多大,就要搭配量觀察。過去經驗,在多頭趨勢運行下,都會先有一個暖身量產生;也就是行情剛起跑時,量會先增加後,又再往下掉,出現一個凹洞量,代表籌碼安定;等到第二次量再上來時,應把握機會,因為股票就要發動上漲了。所謂量先價行,就是這個道理。

量要增加到何種程度,才具指標意義?建議投資人可先找出一條均量線,或直接以五日均量做基準,當個股成交量第二次突破均量線時,就是買進訊號;行情有可能走個三、五天,甚至三、五周,完全看量決定。當量溫和增加,五日均量緩步上升,就可準備加碼;等出現股價壓回,成交量縮時,就是好買點。

切記,藉由DMI指標找出個股進場時機,必須搭配量參考;若正DI突破負DI,但量能不足,行情也走不遠。
 
另外,ADX的位置在什麼地方,也有重要意義,必須一併考慮。舉例來說,投資人可將正DI當作原告,負DI當作被告,ADX當作法官。

若ADX在正、負DI的下方,就代表法官在睡覺,無法判案,行情多空未明;當ADX彈起來,就代表法官去上班了,此時要看它偏向哪一方。如果ADX靠近正DI、上漲方向指標,就意味原告會贏,行情樂觀;反之,ADX靠近負DI、下跌方向指標,就代表被告會贏、原告會輸,行情保守看待。

透過簡單的比喻,投資人便能了解指標之間的關係;但,要是出現大多頭行情,ADX在正負DI上方,呈現一面倒狀態,這個行情就稱作「飛龍在天」,此時投資人要避免自己中途被洗出場,最好方式,就是「上訴高等法院」,把ADXR找出來。

訴訟案件若因案情膠著,雙方纏訟許久,就會上訴到高等法院,此時ADXR就能發揮作用;當ADXR轉折而下,且跌破ADX時,代表行情反轉,就是出場時機。運用這項指標,可避免個股在回升波、或軋空行情中提前離場。

換言之,個股賣出時機參考指標,與行情大小有關;一般行情下,以ADX作為出場依據,大行情則要看ADXR。而加碼時機要看量決定,一旦波段攻擊量起,持續不衰退,就不必擔心。

利用技術分析找飆股,有四大要素要配合,即價、量、時間與角度;但一般指標只有價格觀念,若能將量、價結合,操作起來就能得心應手。

案例:碩禾
以碩禾為例,股價在218.5元至252元區間,量增、且上漲角度陡,到股價252元至235元區間,壓回、量縮且下跌角度緩,股價未跌破55日均線(季線),一旦出量,就是波段攻擊的起漲買點。
 
由圖所示,正DI突破負DI,且成交量增,果然一路從235元上漲至2014年2月18日的607元。
買點:正DI大於負DI,且ADX轉折向上
賣點:ADX大於55時,ADX跌破ADXR且ADXR轉折向下
買點:正DI喇叭口收斂後再發散,可作加碼
(歐陽善玲)


統一國際開發副總經理 廖繼弘
三線一心法 來回操作強勢股

要找強勢股買點,最簡單好用的一招,就是「三線一心法」。所謂三線,指的是五日線、十日線及二十日線,經過一段時間整理,糾結在一起;一旦股價帶量、向上突破二十日均線時就是「一心」,各期均線開始擴散,形成多頭排列助漲格局,即可視為初步買進訊號;若是中長紅突破,反轉向上有效度會更強。

鎖定「三線一心」個股買進後,要判斷個股夠不夠強,最好的加碼點,在九日KD攀升至八十以上強勢鈍化,或九周KD在八十以上高檔鈍化,就看行情大小而定。第三次進場加碼時機,在KD鈍化後,股價拉回修正不破二十日均線;當二十日均線保持上揚助漲時,拉回測試二十日線,就是第三個買點。

至於賣出時機,則在高檔價量或指標背離,即股價創高點,但指標無力創高點時就要小心,一旦股價跌破二十日線,且均線明顯下彎助跌時,就要出場。

利用均線選擇強勢股,步驟應是:先尋找股價均線糾結、量縮盤整,一旦向上突破二十日均線,並呈現高角度上漲,五日、十日及二十日均線發散,形成明顯多頭排列格局時,就是首次介入時機。

此時,個股成交量會明顯放大,股價與二十日均線正乖離也逐漸拉大,大型股與二十日均線乖離拉大約一四%,中小型股與二十日均線乖離約二○%,漲多拉回修正而不破十日均線,也可再加碼。
 
 
案例:美律 
2013年9月6日股價拉長紅、突破盤整區間,各期均線開始轉為多頭排列助漲,就算股價拉回,也都未有效跌破20日線,其後9日KD值更頻頻上升至80以上,呈現高檔鈍化,就是強勢股最好的代表。
(歐陽善玲)


大慶證券投顧部副總經理 董鍾祥
季線乖離法 尋找個股買賣點

股市有一個不變的定律,即個股漲多必定拉回;跌深必定反彈。利用這種定律,就能透過季線乖離法,找到個股買進、賣出時機。所謂「季線乖離法」,就是用股價與季線乖離方式,尋找個股買賣點。

投資人可先找出個股季線,並沿著季線上方(正乖離)一○%,及下方(負乖離)一○%畫出軌道圖。利用負乖離過大,股價跌破就會出現反彈,或正乖離過大,股價突破就會拉回的原則操作。

這條季線軌道就像飛機跑道,飛機要轉彎,無法立刻掉頭,必須慢慢移動、調好角度,方向才可能改變。個股行進也是如此,以季線軌道當作基準,方向就無法立刻逆轉;除非有兩種情況發生,一是出現一根長黑棒、跌破季線,另一是這三條軌道已微微下彎,只要這兩個條件成立,就可判定行情已步入空頭,投資人走為上策。

反之,個股走勢若沿著季線而上,就算地心引力原理,個股漲多修正,股價在季線之上也都有強勁支撐,即多頭格局,只要方向未改變,投資人就不須急著出場。利用軌道線抓趨勢反轉的個股,可賺到較大波段;設定參數時,也有人以五十日均線取代季線,投資人可參考。若能鎖定近三個月、台股操作績效前三十名基金,再比對這些基金的前五大持股,從法人看好標的中,選出季線正乖離標的持續追蹤,中期來看,勝出機會大。
 
(歐陽善玲)

案例:宏達電
2010年2月,宏達電股價從277.5元上漲至1300元,過程中股價幾乎沿著季線一路而上,拉回修正在季線附近支撐強勁;直到高點出現一根長黑棒、摜破季線後,股價自此一路下跌,就算跌深反彈,也難突破季線。
 
專業投資人 朱家泓
雙線操盤法 提高投資勝率
 
技術分析的觀察點有很多,但我最常用、也覺得最好用的是「雙線操盤法」。所謂的「雙線」就是從周線看中期多空方向,再依日線作為短線進出依據;而如果想讓資金發揮較大的效力,更可依循十日線、二十日線,並搭配波浪形態做操作。
 
首先,在短線買訊方面,可先挑三線( 五、十、二十日線)多頭排列向上的股票,列為觀察股,待股價拉回測底或盤整後,再出現第一根帶量的中長紅K棒,且KD交叉向上時,就是絕佳買點。至於中長線買訊研判,則可依上述同樣的邏輯操作,只是日線改為周線,股價沿著五周、十周線買賣即可。
 
當然,布局後一定要嚴設停損,股價跌破十日線就停損出場,停損點不破不賣,未獲利五%以上也不考慮停利。不過,當股價漲勢凌厲,距十日線乖離大於一五%以上,則可沿五日線操作;若漲勢角度變陡,則改沿三日線操作;股價爆量收長黑棒,就該停利出場,靜待下次進場點。
 
此外,在投資心理面上,要記住三口訣:「買訊條件不足時要忍耐」、「該停損時不要等待」、「紀律化操作降低意外」;如此一來才能夠不斷找到高勝率、高獲利率的飆股。
 
(林心怡)
 
案例:富晶通
以富晶通為例,在盤整後出現第一根帶量的中長紅K棒,且KD交叉向上時,就是絕佳買點。
 
股價跌破波浪形態或趨勢線,或是跌破5日線時即為賣訊。
 
國泰證期投資顧問處協理 陳威良
三點進擊法 搭主力順風車
 
操作上,我會利用「三點進擊法」,亦即抓轉折、進場、出場點等高勝率的技巧,不但有助提高獲利幅度,亦能從中看懂主力作價心態。首先,我會先觀察相對大盤強勢的個股,不論出現什麼技術面的買進訊號,前提一定要強過大盤,否則不考慮進場。買進點除了最常用的沿五日、二十日均線操作外,最好的辨識點就是股價突破整理平台「大量長紅K棒」。
 
相反的,當股價出現「高檔爆量收長黑棒」或留下一根長黑「避雷針」,就是轉折向下的反轉弱訊號,此時可考慮先行賣出。
 
不過,若是要尋找飆股,除了技術線形外,可搭配股本低於十億元、董監持股高於兩成,以及具備長線利多題材的新興產業個股,股價會相對活潑;尤其當技術線形轉強後,搭配成交量與法人追價籌碼增加,漲勢更有想像空間。
 
此外,技術指標背離也是很好用的進出點,如下跌走勢中,股價跌破前次低點,但KD不破前次低點,就是「技術指標低檔背離」,是一個重要的轉折向上訊號;反之,「技術指標高檔背離」則為多翻空的跡象。
 
(林心怡)
 
案例:南六
以南六為例,股價走勢強於大盤,故在119元附近布局。當股價出現「高檔爆量收長黑棒」或留下一根長黑「避雷針」,就是轉折向下的反轉弱訊號,可考慮賣出。

2015年10月13日 星期二

麥樹仁:揭露 歷年股王的祕密

http://www.cmoney.tw/notes/note-detail.aspx?nid=11330


5月6日 台股股王大立光 創下台股的天價2050元,
我們就來稍微研究一下台股股王的歷史,
到底股王的需要什麼條件,未來台股股王的候選人 有哪些?

要理解這問題,我們就把所有歷年來台股的股王 列一個清單:
(圖片來源:麥樹仁投資社群網站)

1989年:金融股、資產股是〝大趨勢〞,

可以被炒作的 都有可能變股王

從台股股王的歷史中 我們發現,
其實早期台灣股市在1989那年代,台灣剛建立基礎建設,
所以 金融跟資產股股王最大宗,那是錢淹腳目的時代。
多數熱錢追逐少數股票的結果,就是造成股王 其實獲利沒有多少

以 國壽(國泰金) 為例,
它的獲利EPS只有7元,股價卻可以到1975元,可以說相當誇張!
華園 獲利只有7.24元,股價可以到1075元,
那個年代,光是炒作 就可以當股王,如台機、台火華園 等

1995年:科技股EPS普通,卻創下高股價

當台灣進入了科技的時代,1995年台積電上市後,股王開始換成科技股,
這時,禾伸堂創下999的天價,華碩也到達890的天價。

在科技股剛起來的年代,大部分股王的EPS獲利 大約就只有10元,
這樣的EPS 算普通,股價卻可以長到300元起跳,幾乎也可以說是炒作造成的
此時最高的獲利是華碩,EPS賺22.4元 股價到890元,本益比也是40倍
這時候的股王 主要就是PC/NB 跟 IC設計公司、網路概念股,
華碩廣達智原思源


2000年:無論獲利是高是低,都能炒作 成為股王

到2000年以後,台灣開始出現世界頂尖的公司,
如有技術的聯發科大立光 和自創品牌的宏達電
這些公司獲利EPS 都至少30元起跳,是獲利跟股價都很搭配的股王,
雖然這樣說,還是有股價跟獲利不能搭配的股王,
如 做太陽能益通茂迪,飯店的晶華,博弈機的的伍豐
這些 都是炒作出的股王,每股盈餘都低於20元,股價都接近千元



在這個世代 要當股王,只有兩種:

第一種就是 有高技術門檻,獲利很好 加上 大趨勢
如 大立光,做光學模組,進入障礙很高,當上兩次股王!
第一次當股王 是手機裝上相機模組,大家終於可以用手機拍照
第二次當股王 則是智慧型手機大流行,社交網站造成拍照變成一個趨勢

聯發科則是搭上PC跟手機熱潮,做了光碟機晶片 跟手機手機晶片,
這技術檻也很高,也當了三次股王!
宏達電則是智慧型手機跟代工,當了兩次股王。

在這世代,有技術門檻的股王 連續當的機率蠻高的,
不像古早的科技代工業 或是 金融資產股王,只能當一屆

另外一種股王,就是炒作〝大趨勢概念〞,搭配〝不差的〞獲利
益通茂迪,EPS十幾元 但追上了節能風潮;
如 伍豐 炒作博羿概念、晶華 炒作中國人來台觀光旅行,
它們獲利都很普通,股王算是炒做得來的。

不管如何,從台股開盤以來,有可能是基本面很好 當上股王,
但大部分是跟隨大趨勢炒作!

歷年股王都有個共同點:〝跟隨一個新的大趨勢〞

如果我們依照這〝歷史的邏輯〞來選未來10年台股的股王,
就會選到F-金可王品 這兩家公司。

在這年代顯而易見的大趨勢 就是〝中國〞成長,
這兩家公司 剛好搭上這大趨勢,在中國的業務 拓展相當的成功

再來 它們的股本小、籌碼集中,
F-金可的股本有9.26億、王品的股本有7.47億,算是小股本
在歷史上,只有台積電當股王時的股本 有144億,但那是製造業。

大部分股王的股本 都低於50億,其中,股本10億附近的股王佔多數
還有,它們的每股盈餘 也超過10幾元,
金可EPS有15.7元、王品有13.65元,也是高獲利

最後,金可隱形眼鏡有基本的品牌 跟技術障礙,
王品的品牌跟管理技術也是一流,這些 都難以模仿。


延伸閱讀>>台股歷史30年
       台股 股王興衰史