Optimisasi portofolio pada dasarnya menggunakan model Markowitz dalam menghasilkan portofolio yang efisien, namun portofolio yang terbentuk tidak baik ketika return saham memiliki perubahan regime, seperti pada periode ‘bear’ and ‘bull’ market. Tujuan dari penelitian ini adalah mengembangkan optimisasi portofolio dengan mempertimbangkan kasus perubahan regime, serta menerapkannya pada data runtun waktu yang memiliki perubahan regime dalam rangka pembentukan portofolio yang lebih efisien. Metode yang digunakan adalah algoritma generalized reduced gradient (GRG) berbasis Markov-switching model (MSwM). Pada penulisan ini akan dihasilkan algoritma pemrograman dalam software R untuk membuat paket program GRG berbasis MSwM yang akan digunakan untuk optimisasi portofolio pada kasus perubahan regime. Kinerja portofolio yang terbentuk dievaluasi dengan pengukuran risiko yaitu standar deviasi. Jenis data yang digunakan adalah data sekunder yang berisi saham-saham perbankan dari enam saham terpilih yang aktif di IDX Bursa Efek Indonesia pada tahun 2013-2018, yaitu: saham BRI, BNI, BTN, Bank Mandiri, BCA, dan Bank Danamon. Hasil diperoleh algoritma pemrograman untuk program GRG berbasis MSwM untuk optimisasi portofolio pada kasus perubahan regime, serta diperoleh portofolio saham perbankan yang optimal untuk tiga kriteria investor. Pada penelitian ini, portofolio terbaik jatuh pada kriteria investor yaitu meminimalkan risiko pada ekspektasi return tertentu. Penelitian ini memberikan kesimpulan bahwa algoritma GRG berbasis MSwM menghasilkan bobot portofolio berdasarkan fenomena “bull” and “bear” market, sehingga bobot portofolio yang terbentuk lebih realistis didalam pasar modal.